본문 바로가기

Information/[AWS]

[AWS] NACL(Network ACL) vs Security Group(보안그룹)

NACL(Network ACL)
- 규칙 번호가 낮은 순으로 우선 적용
- 서브넷 단위로 적용(하나의 NACL만 적용)
- NACL이 설정된 서브넷 안의 모든 인스턴스에 적용
- 1개의 VPC에 최대 200개의 NACL까지 생성 가능
- 1개의 NACL Inboud 20개, Outbound 20개 등록 가능
- 여러개의 서브넷에 NACL 적용 가능
- Stateless 성질(요청 정보를 따로 저장하지 않기 때문에, 응답하는 트래픽에 대한 필터링 설정 필요)

@주의
- 규칙 번호는 낮을수록 더 높은 우선순위를 가지며,
  운영 도중 규칙을 삽입해야하는 경우가 분명 생기므로, 처음에 10,100 단위로 만들어야한다.


Security Group (보안그룹)
- 인스턴스(서버) 단위로 적용
- 특정 그룹을 지정시에만 인스턴스에 적용
- 1개의 VPC에  최대 2500개까지 Security Group 생성 가능
- 1개의 Security Group에 Inbound 60개, Outbound 60개 등록 가능
- Stateful 성질(요청 정보를 저장하여 응답하는 트래픽 제어를 하지 않음)


* 내부(같은 서브넷) 통신 : Security Group 정책을 통해 통신
* 외부(다른 서브넷) 통신 : NACL -> Security Group 정책을 거치면서 통신
1차적 보안은 Security Group, 2차 보안은 NACL

NACL-각 규칙에 대해서 Allow 또는 Deny를 지정할 수 있으며, 규칙별 중요도(규칙을 적용할 순서)가 있음
Security Group-기본적으로 모두 Deny이며 Allow 하는 규칙만을 만들어낼 수 있으며 순서없이 모두 적용

@결론
NACL의 인/아웃바운드 : 다른 서브넷/외부에서의 요청/응답
Security Group의 인/아웃바운드 : 같은 서브넷/내부 및 다른 서브넷/외부에서의 수신/발신

즉, TCP나 ICMP 수신 트래픽들에 대한 “응답”을 Security Group에선 제어를 할 필요가 없다는 뜻