끄적이는 보송

[AWS] Security Group과 NACL의 차이 본문

STUDY/AWS

[AWS] Security Group과 NACL의 차이

끄적이는 보송 2022. 2. 23. 17:07
반응형

 

 

AWS는 기본적으로 모든 것을 Deny를 하는 정책을 가지고 있다. AWS 방화벽 기능에는 크게 두 가지가 있다. Network ACls (stateless firewalls), Security Groups(stateful firewalls)가 되겠다.

 

1. NACL (stateless firewalls)

 - NACL은 서브넷 단위로 적용 (서브넷 안에 EC가 100개 있으면 모두 해당 NACL의 영향을 받는다)

 - NACL은 여러 Subnet에 적용 가능하며 Subnet은 하나의 NACL만 적용

 - VPC 하나당 최대 200개까지 생성 가능

 - NACL은 Ibound Rule 20개, Outbound Rule 20개 등록 가능

 - Stateless 성질로 요청 정보를 저장하지 않으므로 응답 트래픽 제어 설정을 해야 함.

 

즉, Client의 요청을 허용했다면 Response 하는 것 또한 허용해야 한다. 하지만 정확히 정해진 포트를 집을 수 없다. 이유는 서버는 흔히들 알려져 있는 포트(80, 443 etc...)를 사용하지만 Client OS에서 사용하는 포트 범위는 굉장히 다양하며 OS마다 또 다르다. 일반적으로 1024번 이하의 포트는 well-known 포트라고 서비스 데몬이 사용하는 포트고 1025~65536 포트를 Client가 사용하기 때문이다.

 

 

2. Security Group (stateful firewalls)

 - EC2 인스턴스 단위로 적용

 - 하나의 EC2 인스턴스에 여러 개의 SG 등록 가능

 - VPC 하나당 최대 2500개의 SG 생성 가능

 - SG는 Inboud Rule 60개, Outbound Rule 60개 등록 가능

 - Stateful 성질로 요청 정보를 저장하므로 응답 트래픽 제어 설정이 필요하지 않음.

 

즉, Client의 요청을 SG는 기억을 하며 Client에게 Response를 보낼 때, 들어올 때는 허용됐기 때문에 나가는 것도 허용한다는 의미다. 

 

 

3. 정리 

 - 같은 Subnet에 있으면 SG 만으로 통신

 - 다른 Subnet에 있으면 NACL을 먼저 거친 후, SG으로 통신

 

현업에선 일반적으로 Security Group 하나만 사용한다. 하지만 추가적인 보안을 원한다면 NACL 설정도 가능하겠다. 아직까지 이렇게 하는 데는 보지 못했다.

반응형
Comments