설명
VPC Flow Logs는 네트워크 인터페이스를 오가는 IP 트래픽 정보를 수집합니다. VPC 전체, 특정 서브넷 또는 네트워크 인터페이스에 설정할 수 있습니다.
잠재적 영향
필요한 범위의 로그가 없으면 비정상 통신이나 접근 경로를 조사할 근거가 부족해집니다.
해결 방법
aws_flow_log에 vpc_id, subnet_id, eni_id 중 수집 대상에 맞는 하나를 지정하세요. 로그 대상과 전달 권한을 구성하고 필요한 트래픽이 수집되는지 확인하세요.
예시
변경 전 첫 번째 Flow Log는 수집 대상이 없어 유효하지 않습니다. 두 번째는 이미 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
}