説明
デフォルトVPCでもルーティングやセキュリティグループを変更できます。ただし、使いやすさを重視した初期設定に依存すると、ワークロードに必要な分離やアクセスポリシーが明確に設計されていない場合があります。
想定される影響
未確認のデフォルトサブネット、パブリックIP設定、共有セキュリティグループにより、意図より広い接続を許可するおそれがあります。
対処方法
サブネット、セキュリティグループ、パブリックIP割り当て、ルーティングを明示的に確認してください。独立した分離が必要なら、その目的に合わせたVPCとサブネットを使用してください。
例
以下はデフォルトVPCと別のVPCでのサブネット選択を比較する例です。CIDR変数には選択したVPC内の利用可能な範囲を指定し、AMIには対象リージョンで有効なものを用意してください。
変更前
hcl
data "aws_vpc" "default" {
default = true
}
resource "aws_instance" "example" {
ami = "ami-003634241a8fcdec0"
instance_type = "t2.micro"
subnet_id = aws_subnet.my_subnet.id
}
resource "aws_subnet" "my_subnet" {
vpc_id = data.aws_vpc.default.id
cidr_block = var.available_subnet_cidr
}
変更後
hcl
resource "aws_instance" "example" {
ami = "ami-003634241a8fcdec0"
instance_type = "t2.micro"
subnet_id = aws_subnet.my_subnet2.id
}
resource "aws_subnet" "my_subnet2" {
vpc_id = aws_vpc.main.id
cidr_block = var.available_subnet_cidr
}