VPC Flow Logsの収集範囲の確認

調査に必要なネットワーク範囲をVPC Flow Logsで記録してください。

説明

VPC Flow Logsは、ネットワークインターフェイスを出入りするIPトラフィックの情報を収集します。VPC全体、特定のサブネット、またはネットワークインターフェイスに設定できます。

想定される影響

必要な範囲のログがないと、異常な通信やアクセス経路を調査するための情報が不足します。

対処方法

aws_flow_logには、収集対象に応じてvpc_id、subnet_id、eni_idのいずれか1つを指定してください。ログの保存先と配信権限を設定し、必要なトラフィックが記録されることを確認してください。

例

変更前の最初のFlow Logは、収集対象がないため無効です。2つ目はすでにmain VPCを対象としています。変更後は両方のFlow LogでこのVPCを指定しています。ロググループとIAMロールは別途定義します。

変更前

hcl
resource "aws_vpc" "main" {
  cidr_block = "10.0.0.0/16"
}

resource "aws_flow_log" "example" {
  iam_role_arn    = aws_iam_role.example.arn
  log_destination = aws_cloudwatch_log_group.example.arn
  traffic_type    = "ALL"
}

resource "aws_flow_log" "example1" {
  iam_role_arn    = aws_iam_role.example.arn
  log_destination = aws_cloudwatch_log_group.main.arn
  traffic_type    = "ALL"
  vpc_id          = aws_vpc.main.id
}

変更後

hcl
resource "aws_vpc" "main" {
  cidr_block = "10.0.0.0/16"
}

resource "aws_flow_log" "example" {
  iam_role_arn    = aws_iam_role.example.arn
  log_destination = aws_cloudwatch_log_group.example.arn
  traffic_type    = "ALL"
  vpc_id          = aws_vpc.main.id
}

resource "aws_flow_log" "example2" {
  iam_role_arn    = aws_iam_role.example.arn
  log_destination = aws_cloudwatch_log_group.example.arn
  traffic_type    = "ALL"
  vpc_id          = aws_vpc.main.id
}

参考資料