EC2インスタンスのデフォルトVPC利用の確認

デフォルトVPCの利用がワークロードのネットワーク設計に合うか確認してください。

説明

デフォルト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
}

参考資料