説明
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
}