
NACL (Network ACL)
NACL은 방화벽과 같이 외부에서 유입되는 트래픽을 차단 및 허용하는 역할을 수행합니다. VPC에서 기능을 제공하고 있기에 VPC가 구성이 되어있어야 사용이 가능합니다.
- 트래픽 제어 시 서브넷 단위로 적용되기에 해당 서브넷에 포함된 모든 인스턴스에 적용됩니다.
(여러 개의 서브넷에 적용이 가능합니다.)
- Stateless 방식 -> 인바운드 정보를 저장하고 있지 않습니다. 아웃바운드 정책을 명시적으로 허용해야만 통신이 가능합니다.
(하나의 통신 흐름이더라도 인바운드, 아웃바운드 트래픽 정책이 별도로 적용됩니다.)
- Default Allow 정책이 적용되며 트래픽을 제어 하고 싶을 경우 Allow, Deny 정책을 추가할 수 있습니다.
(Default NACL의 경우 Default Allow 정책이 있으며 제거할 수 있습니다.
Allow 정책을 지우면 결과적으로 NACL도 Default Deny 정책이 적용됩니다.)
(사용자가 생성한 NACL은 Default Allow 정책 없이 Default Deny 정책만 존재합니다.)
- 번호가 가장 낮은 규칙부터 판단합니다. 규칙에 일치하는 트래픽이 있으면 이와 모순되는 하위 규칙이 있더라도 적용됩니다.
참고
- VPC당 최대 200개의 NACL 생성 가능
- NACL당 인바운드 20개, 아웃바운드 20개 제한
Security Group도 NACL과 마찬가지로 방화벽과 같이 트래픽을 제어하는 역할을 수행합니다. 다만, NACL에서 한번 필터링 된 트래픽에 대해 제어하게 됩니다.
- 트래픽 제어 시 인스턴스 단위로 적용됩니다.
- Stateful 방식 -> 인바운드 트래픽 정보를 기억하고 있습니다.
(인바운드 된 트래픽이 아웃바운드 시 아웃바운드 정책이 적용되지 않습니다.)
- Default Deny 정책 적용으로 트래픽을 허용할 경우 정책을 추가해서 적용합니다.
- Security Group은 Allow정책만 적용이 가능하며 트래픽 검토 시 모든 정책을 확인합니다.
참고
- VPC 당 최대 2500개 까지 생성 가능
- Security Group당 인바운드 60개, 아웃바운드 60개 제한
요약
NACL | Security Group | |
적용 범위 | 서브넷 | 인스턴스 |
상태 저장 여부 | Stateless | Stateful |
Default Policy | Default Allow | Default Deny |
적용 Action | Allow, Deny | Allow |
Rule 검토 | 객체 내 모든 Rule 검토 | Rule을 번호 순으로 처리 |
같은 서브넷끼리 통신할 때 : 인스턴스끼리 통신이기에 Security Group 정책이 적용 됨
다른 서브넷끼리 통신할 때 : 인스턴스를 넘어 네트워크 간 통신이 되기에 NACL의 정책이 먼저 적용되고, Security Group의 정책이 적용 됨
[참고사이트]
https://potato-yong.tistory.com/84
https://willseungh0.tistory.com/109
'AWS' 카테고리의 다른 글
[AWS] EC2 Swap 메모리를 늘려보자 (0) | 2023.01.22 |
---|---|
[AWS] EC2 Session Manager 접속 (0) | 2023.01.09 |
[AWS] VPC Peering 적용하기 (0) | 2022.06.28 |
[AWS] AWS의 주요 서비스 종류 (0) | 2021.06.14 |
[AWS] 인스턴스 수명주기 (재부팅, 중지, 최대 절전 모드, 종료의 차이) (0) | 2021.06.08 |