VPC Flow Logs 수집 범위 점검

조사에 필요한 네트워크 범위를 VPC Flow Logs로 기록하세요.

설명

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
}

참조