Public Cloud/AWS

[ AWS ] NACL

공기반 코딩반 2023. 1. 24. 16:06
반응형

NACL (네트워크 ACL)

: 1개 이상의 서브넷 내부와 외부의 트래픽을 제어하기 위한 방화벽 역할을 하는 VPC를 위한 선택적 보안 계층.

- 보안 그룹 처럼 방화벽 역할

- 서브넷 단위

    - 인스턴스 단위로 제어할 수 없음.

    - 다양한 서브넷에 연동 가능함(1:N)   ( 하나의 서브넷은 하나의 NACL에 연동 가능)

 

- Port 및 IP를 직접 Deny 가능함.

    - 외부 공격을 받는 상황 등 특정 IP를 블록하고 싶을 때 사용함.

- 보안 그룹으로 해결하지 못하는 부분을 허용하는 역할

 

- Stateless: 들어오는 트래픽 and 나가는 트래픽 구분 X

    - Outbound에 Ephemeral Port(임시 포트) 범위를 열어 주어야 정상적으로 통신이 가능

 

 

Stateful

- client는 임의의 큰 숫자포트 (Ephemeral Port)를 사용

- Server는 Well Known Port를 사용하여 client의 트래픽 허용

- 보안 그룹이 Outbound Allow 가 none 이라도 어떤 조건이 들어오더라도 트래픽을 내보냄

 

Stateless

- NACL은 Outbound Allow가 none 이라면, 트래픽을 내보내지 X

- 한 Client의 Ephemeral Port(ex 56630)를 허용하더라도 다른 Client가 같은 56630을 사용한다는 보장이 없음. 다른 Port를 Allow 하기 까다로움

 

 

 

 NACL 규칙

  •  규칙번호: 규칙에 부여되는 고유 숫자, 낮은 번호부터 규칙이 순서대로 평가됨. => 낮은 규칙번호를 우선적용
    • AWS추천은 100씩 증가함. 규칙 중간 중간 추가하기 용이하게 하기 위함
  • 유형: 트래픽 유형(SSH = 22, DNS = 53, UDP = 17)
  • 프로토콜: 통신 프로토콜(TCP, UDP ...)
  • 포트 범위: 허용 or 거부
  • 소스: IP주소의 CIDR 블록
  • 허용/거부(Allow/Deny)

 

좋지 않은 규칙순서

규칙번호 프로토콜 포트 범위 소스 허용/거부
100 TCP 80  0.0.0.0/0 Allow
200 TCP  80 112.12.35.2/32 Deny
* ALL ALL 0.0.0.0/0 Deny

 

올바른 규칙순서

규칙번호 프로토콜 포트 범위 소스 허용/거부
100 TCP 80  112.12.35.2/32 Deny
200 TCP 80 0.0.0.0/0 Allow
* ALL ALL 0.0.0.0/0 Deny

 

규칙번호 간격이 커 추가 규칙을 넣기 용이함.

규칙번호 프로토콜 포트 범위 소스 허용/거부
50 TCP 3306 112.12.35.2/32 Allow
100 TCP 80  112.12.35.2/32 Deny
200 TCP 80 0.0.0.0/0 Allow
* ALL ALL 0.0.0.0/0 Deny

 

 

 

NACL 고려할 점

- Stateless 방화벽이기에 Outbound 신경써야함. 

    - 임시포트 Allow / Linux(32768~61000), Windows(49152~65535) , Windows XP(1025~5000)

- 서브넷 내부 트래픽에는 적용 X  / 서브넷에서 들어오거나 나가는 트래픽에만 적용이 됨.

- 멀티 아키텍쳐(서브넷이 2개 이상이라면)  --> 복잡 --> 보안그룹 우선 사용

- VPC 생성할 때 기본적으로 하나 생성됨(모든 트래픽 Allow)

- 직접 NACL을 생성할 때는 모든 트래픽이 Deny

 

- 하나의 서브넷 -- 하나의 NACL 

- 하나의 NACL -- N개의 서브넷

 

반응형

'Public Cloud > AWS' 카테고리의 다른 글

fdgxfgd  (0) 2023.01.30
55  (0) 2023.01.27
[AWS] Amazon API Gateway  (0) 2023.01.18
[AWS] Lambda  (0) 2023.01.18
[AWS] - 이벤트 매칭 규칙  (0) 2023.01.17