본문 바로가기

Cloud/AWS

AWS Network Firewall - Part 2

Today Keys :  firewall, network, vpc, aws, 방화벽, managed, endpoint, 관리형, proxy, 네트워크, policy, rule, group


이번 포스팅은 AWS Network Firewall 의 두 번째 포스팅입니다.

첫 번째 포스팅에서는 AWS Network Firewall을 만들고, 기본 테스트를 해본 예제였고, 이번 포스팅은 Network Firewall에 대한 몇 가지 정리 내용입니다.

AWS Network Firewall - Part 1

 

AWS Network Firewall - Part 1

Today Keys : firewall, network, vpc, aws, 방화벽, managed, endpoint, 관리형, proxy, 네트워크, policy, rule, group 이번 포스팅은 AWS Network Firewall 입니다. Managed 서비스로 이제 방화벽이 제공되고..

zigispace.net


AWS 네트워크 방화벽(Network Firewall)

▪ AWS VPC를 위한 관리형 네트워크 방화벽, 침입감지 및 방지 서비스(IDS/IPS)

▪ 인터넷 게이트웨이, NAT 게이트웨이, VPC, Direct Connect을 통한 트래픽에 대한 보안 적용 가능

▪ 오픈 소스 IPS인 Suritaca 사용하기 때문에 Suritaca  호환 규칙을 지원

▪ 보호된 서브넷(방화벽 엔드포인트 서브넷)으로 들어오고 나가는 트래픽을 모니터링하고 제어하는 기능 제공

▪ IP 주소는 물론 도메인 정책 지원

    - 특정 AWS 서비스 도메인만 사용하도록 설정 가능.

 

 

AWS 네트워크 방화벽 리소스

▪ 방화벽(Firewall)

    - VPC 서브넷에 대한 트래픽 필터링

▪ 방화벽 정책(FirewallPolicy)

    - 방화벽에서 인바운드/아웃바운드 트래픽 필터링에 사용할 정책을 정의

    - 방화벽 정책 내에는 Stateless rule group / Stateless default action / Stateful rule group을 정의

▪ 규칙 그룹(RuleGroup)

    - 실제 방화벽에서 적용될 규칙을 정의한 그룹

    - Stateful(상태저장) 정책과 Stateless(상태 비저장) 정책이 존재

 

 

AWS Network Firewall 엔진

▪ Stateless 엔진

    - 패킷의 상태 정보와 상관없이 현재 패킷의 정보로만 stateless하게 적용하는 규칙

    - 정의된 Stateless rules에 대해서 순차적인 규칙 검사

 

▪ Stateful 엔진

    - 패킷의 상태정보를 기억하여, 상태 정보를 기반으로 stateful하게 적용하는 규칙

    - 정의된 Stateful rules에 대해서 전체 검사

 

▪ 네트워크 방화벽은 두 가지 엔진을 사용하여 패킷을 검사하고, 각 엔진에 설정된 방화벽 정책을 적용

▪ Stateless 엔진을 먼저 적용하고, Stateless 엔진에서 pass/drop이 아닌 Forward 설정이 해당하는 경우에만 Stateful 엔진 적용.

▪ Stateless 엔진의 경우 NACL과 유사하게 동작

▪ Stateful 엔진은 오프 소스 IPS인 Suricata와 호환되는 규칙을 사용

▪ Stateful 엔진은 기존 Security Group과 유사하게 동작하지만, Default 정책이 허용이라는 점은 다름

▪ 스테이트풀 엔진의 경우 심층 패킷 검사(deep packet inspection) 수행 시, 패킷의 헤더 이외에 페이로드(payload)까지 확인

▪ Stateless Engine의 Stateless 정책을 확인하고, 정책에 대한 Action이 forward인 경우 Stateful 엔진 수행

 

AWS Network Firewall 기본 구조

▪ 네트워크 방화벽은 실제 사용자 VPC에 존재하지는 않고, AWS가 관리하는 영역에 존재하며 네트워크 방화벽 사용 시에 해당 서비스에 접근이 가능한 방화벽 엔드포인트를 제공

    - 생성되는 엔드포인트 유형은 'GatewayLoadBalancer'

▪ 방화벽 엔드포인트는 하나의 가용영역에 1개의 서브넷만 지정 가능

   - 가용성을 위해서 다수의 가용영역에 지정하는 것을 권고

▪ 방화벽 엔드포인트가 포함된 서브넷 내에 존재하는 서비스에 대해서는 방화벽 서비스를 사용할 수 없기 때문에 방화벽 엔드포인트 전용 서브넷으로 할당해야 함.