패스트캠퍼스 챌린지 19일차
AWS에서 NACL설정하기
- 보안에 대한 개념 설명
- AWS에서의 실습
AWS에서 instance에 대한 보안을 설정하는 방법은 크게 2가지가 있음
- NACL - statelss
- Security group - stateful
이것에 대한 차이는 다음과 같음.
주) 오른쪽이 Server
테이블(강사는 패킷으로 쓴 것 같다.) 의 의미 - 클라이언트가 Request를 쏠 때는 80번 Port로 쏘고 받을 때는 Server가 Response로 Client의 1025 Port로 달라는 의미
주)임시 포트의 범위는 1024~65535
- Server입장에서 생각했을 때 Response가 80번 포트로 들어 오는 것이므로 Inbound
- Server입장에서 생각했을 때 1025로 Response를 쏴줘야 하므로 Outboud
반대 방향의 흐름(Response)은 위와 같다. 즉, 전체적인 네트워크 구조는 위와 같다.
Stateful(Security Group)
먼저 위 그림의 정책 Inbound: 80 / outbound: none의 의미는 다음과 같다.
- 80으로 Client가 쏴주는 것은 허용, 나머지 포트는 불허용
- outbound(Server입장에서 쏘는 것)는 아예 어떠한 포트도 허용하지 않음.
그러나 Stateful은 상태를 기억을 하고 있음 => 즉, 원래 80으로 inbond통신해서 request를 서버로 주는 것은 가능하지만 정책상 Response는 아무대도 가면 안 되지만, 패킷에서 1025PORT정보를 기억하고 있음. 따라서 1025로 갈 수 있음. (확인 필요)
- Stateful: Session을 통해 유용한 정보를 기억하고 있다.
Stateless(NACL)
Stateful과 달리 룰에 따라서만 행동하는 정책으로 위에 따르면 패킷에 상관없이 Outbound를 내보내지 않는다.
NACL 실습
1. AWS 로그인 > VPC > 보안 > 네트워크 ACL
- 기본 생성된 NACL이 있어서 햇갈릴 수 있지만 서브넷 연결란에서 내가 생성한 NACL을 확인할 수 있다. (이전 시간에 내 Custom subnet과 연결해 놨기 때문에)
- 내 NACL의 이름을 private-nacl로 바꾼 다음
2) 네트워크 ACL 생성 클릭
3) 정보 입력
- 이름 입력 후 NACL이 들어 갈 VPC 입력 - 생성
4) 서브넷을 연결하기 위해 먼저 public-nacl을 클릭하고 - 작업 - 서브넷 연결 편집 클릭
public subnet과 연결 후, 변경사항 저장
5) 확인
6) 인바운드 규칙 편집
7) public_nacl 인바운드 규칙 편집
8) 확인
규칙번호에 따라 Allow와 Deny가 있음. 규칙번호는 규칙의 우선순위임. 확인을 위해 아래와 같이 101번 규칙을 설정하고 확인
- 101번에서 거부하려고 했으나,
- 100번에서 이미 들어오라고 허용했기 떄문에
- 101번 규칙은 거부됨.
(유형과 프로토콜에 대한 설명은 없었음. 추가적으로 공부해야 할듯)
9) public_nacl 아웃바운드 규칙 편집
- 임시 포트는 1024~65535이므로 나가는 포트는 전부 있어야 함!
-끝-
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성 되었습니다.
#패스트캠퍼스 #패캠챌린지 #직장인인강 #직장인자기계발 #패스트캠퍼스후기 #한 번에 끝내는 AWS 인프라 구축과 DevOps 운영 초격차 패키지 Online!