EC2インスタンスのパブリックIP割り当ての確認

インターネットとの直接通信が不要なEC2インスタンスには、パブリックIPを割り当てないでください。

説明

EC2インスタンスにパブリックIPを割り当てると、ルーティングとセキュリティグループで許可された範囲でインターネットと直接通信できます。associate_public_ip_addressを省略した場合はサブネット設定などの影響を受けるため、割り当ての意図を明示してください。

想定される影響

不要なパブリックIPと広すぎるネットワーク許可が組み合わさると、外部からのスキャンや攻撃にさらされるおそれがあります。

対処方法

直接公開する必要がなければ、associate_public_ip_address = falseを設定し、プライベートサブネットを使用してください。必要な受信トラフィックはロードバランサー経由、送信通信はNATやVPCエンドポイント経由で設計してください。

例

以下は、パブリックIPv4の自動割り当てを明示的に無効にする例です。ルーティングとセキュリティグループは別途設定してください。

変更前

hcl
resource "aws_instance" "example" {
  ami           = data.aws_ami.ubuntu.id
  instance_type = "t3.micro"

  tags = {
    Name = "HelloWorld"
  }
}

変更後

hcl
resource "aws_instance" "example" {
  ami                         = data.aws_ami.ubuntu.id
  associate_public_ip_address = false
  instance_type               = "t3.micro"

  tags = {
    Name = "HelloWorld"
  }
}

参考資料