본문 바로가기
[AWS]/AWS 활용

[AWS] [활용] Network ACL이란 무엇인가?

by METAVERSE STORY 2022. 5. 15.
반응형
728x170


NACL

NACL은 1개 이상의 서브넷 내부와 외부의 트래픽을 제어하기 위해 방화벽 역할을 하는 VPC를 위한 선택적 보안 계층입니다. 보안 그룹과 비슷한 규칙으로 NACL을 설정해 VPC 보안계층을 더 추가할 수 있습니다.

라고 AWS VPC 설명서에 나와있다.

Security Group과 Network ACL을 방화벽 정도로만 인식하고 있는 경우가 많지만 차이점이 분명하게 존재한다.

1. 서비스의 적용 범위

위 사진을 보면 Network ACL은 서브넷 단위로 설정이 가능하며  외부간 통신을 담당하는 보안기능이다. 하나의 서브넷은 하나의 Network ACL만을 가질 수 있다. 하지만 하나의 Network ACLNetwork을 만들고 여러 서브넷에 적용은 가능하다.  ACL은 서브넷에 있는 모든 인스턴스에 자동 적용이 된다.

Security Group은 내부간 통신을 담당하며 인스턴스단위로 정책을 설정할 수 있다. 한 인스턴스 안에서 최대 5개의  SG 설정이 가능하다.  Security Group은 인스턴스에 추가가 필요하다. 

즉 Security Group에서 웹 프로토콜을 허용하고 있어도 Network ACL을 먼저 거치기 때문에 만약 Network ACL에서 Deny가 되어 있다면 최종적으로 접속이 되지 않는다.  

 

2. Stateless vs Statefull

Network ACL의 경우 Stateless 필터링 방식을 사용하고 있다. 요청 정보를 따로 저장하지 않기 때문에 응답하는 트래픽에 대한 필터링을 설정해야 한다. 

즉 아무리 Inbound 요청이 들어와도 Outbound에 대한 정책이 없거나 거부를 한다면 응답은 실패한다. 

Security Group은 Statefull 필터링 방식을 사용한다. 요청정보를 저장해 응답하는 트래픽을 제어하지 않는다. 

즉 Inbound 설정만 해준다면 따로 Outbound에 대한 정책이 없더라도 응답이 가능하다. 

 

3. Allow, Deny

Network ACL은 Allow와 Deny가 모두 가능하다. 위 사진에서 처럼 규칙#의 숫자 가 작을수록 우선순위가 높다. 

Security Group은 단지 Allow만 가능하다. 

 

 

 

======================================

 

4. 실습

기본 Network ACL의 Inbound 규칙이다.
숫자가 낮을수록 우선 적용이 되며 위의 경우에는 100번의 규칙 번호를 가진 모든 트래픽을 허용하는 것이 기본적인 원칙으로 되어 있다. 

 

 

내 휴대폰으로 확인해 본 결과 내가 접속한 서버의 인스턴스 아이디가 화면에 표출되는 것을 확인할 수 있다. 

 

이후 Inbound 규칙에 규칙 번호를 모든 트래픽 허용보다 낮은 숫자로 잡은 후 Deny를 걸어 보았다.

 

 

내 휴대폰의 IP를 차단한 이후 다시 접속하려고 시도해본 결과 네트워크 서버가 응답을 중단했기 때문에 해당 페이지를 열 수 없다고 나온다.

 

 

 

 

 

 

 

https://cloud-oky.tistory.com/3602

반응형
그리드형

댓글