설명
기본 VPC를 사용하는 경우에도 서브넷, 라우팅, 보안 그룹을 조직의 요구 사항에 맞게 관리해야 합니다. 기본 VPC 자체가 안전하지 않은 것은 아니지만, 기본 구성을 검토 없이 사용하면 불필요한 공개 경로가 남을 수 있습니다.
aws_default_vpc는 기본 VPC를 Terraform에서 관리하는 리소스입니다. 이 리소스가 있다는 사실만으로 워크로드가 해당 VPC를 사용하거나 네트워크 통제가 없다고 판단할 수는 없습니다.
잠재적 영향
- 네트워크 통제 부족: 검토하지 않은 서브넷, 라우팅, 보안 그룹 설정이 의도하지 않은 접근을 허용할 수 있습니다.
- 운영 표준 불일치: 환경별 네트워크 구조를 일관되게 관리하기 어려울 수 있습니다.
- 자원 노출 위험: 기본 설정에 의존한 배포에 불필요한 공개 구성이 포함될 수 있습니다.
해결 방법
- 기본 VPC의 서브넷, 인터넷 경로, 보안 그룹을 점검하고 필요한 통제를 적용하세요.
- 별도 네트워크 분리가 필요하면
aws_vpc로 전용 VPC를 정의하고 서브넷과 접근 정책을 함께 설계하세요. - 기존 자원의 이전과 연결 경로를 확인한 뒤 기본 VPC의 사용 중단이나 삭제를 계획하세요.
예시
기본 VPC 관리
hcl
resource "aws_default_vpc" "example" {
tags = {
Name = "Default VPC"
}
}
별도 VPC 정의
hcl
resource "aws_vpc" "example" {
cidr_block = "10.0.0.0/16"
instance_tenancy = "default"
tags = {
Name = "main"
}
}
첫 번째 예시는 기본 VPC를 관리하고, 두 번째 예시는 별도 VPC를 정의합니다. 별도 VPC를 선언하는 것만으로 기존 자원이 이전되거나 접근이 제한되지는 않습니다. 서브넷, 라우팅과 보안 정책은 운영 목적에 맞게 별도로 구성해야 합니다.