보안 그룹에서 인바운드 80 포트 허용 규칙 제거
보안 그룹에서 인바운드 HTTP(80번) 포트를 제거하면 외부에서 EC2 인스턴스의 웹 서버로 접근할 수 없습니다.
인스턴스의 퍼블릭 주소 확인
EC2 인스턴스에 접근하려면 퍼블릭 IP 또는 퍼블릭 DNS가 필요합니다.
NACL 확인
서브넷에 연결된 네트워크 ACL(NACL) 설정을 확인해 인바운드/아웃바운드 규칙이 제대로 구성돼 있는지 확인합니다.
보안 그룹
보안 그룹은 인스턴스에 대한 접근을 제어하는 stateful 방화벽입니다. 인바운드만 허용하면 응답은 자동 허용됩니다.
EC2 인스턴스로 SSH 접속
다운로드한 키페어 파일을 이용해 SSH로 EC2 인스턴스에 접속합니다. Amazon Linux의 기본 계정명은 ec2-user
입니다.
웹 서버 실행 여부 확인
systemctl status httpd
명령으로 Apache 웹 서버가 실행 중인지 확인합니다.
curl http://localhost
로 인스턴스 내부에서 웹 서버 응답을 테스트할 수 있습니다.
보안 그룹에서 80 포트를 허용하지 않은 상태로 외부에서 요청
curl http://퍼블릭IP
를 실행하면 포트가 열려 있지 않아 연결 실패 메시지가 출력됩니다.
보안 그룹에 80 포트를 허용 후 요청 성공
보안 그룹에서 80번 포트를 허용하면, 외부에서 정상적으로 웹 서버 페이지를 받을 수 있습니다.
NACL에 80 포트로 들어오는 트래픽을 차단하는 규칙 추가 (rule#20)
→ 결과: 외부 curl 요청 실패 (NACL에서 DENY가 우선되었기 때문)
NACL에 80 포트 허용 추가 (rule#30)
→ 결과: 여전히 접근 실패 (rule#20이 먼저 평가되어 거부됨)
NACL에 80 포트 허용 추가 (rule#10)
→ 결과: 정상적으로 접속됨. 낮은 번호(rule#10)의 허용이 먼저 평가되며 이후의 거부(rule#20)는 무시됩니다.
NACL과 보안 그룹 차이 정리
- 보안 그룹 (SG): 인스턴스 단위 / 상태 저장(stateful) / 허용만 설정 가능
- NACL: 서브넷 단위 / 비상태(stateless) / 허용과 거부 모두 설정 가능
- 우선순위: NACL은 rule 번호 낮은 것이 먼저 평가됨 (일치하면 즉시 종료)
- 둘 중 하나라도 차단하면 트래픽은 차단됨
요약
- 보안 그룹에 80 포트가 허용되어야 외부에서 웹 서버에 접속 가능
- NACL에서도 80 포트 인바운드/아웃바운드가 허용되어야 함
- NACL의 DENY 규칙이 먼저 오면 이후의 ALLOW는 적용되지 않음
'AWS' 카테고리의 다른 글
AWS - 웹서비스 환경 구성#2 (0) | 2025.06.02 |
---|---|
AWS - 웹서비스 환경 구성#1 (0) | 2025.06.02 |
AWS - EC2 인프라 구조(AMI, EBS, 스냅샷, EIP, Load Balancer, Auto Scaling) (1) | 2025.06.02 |
AWS - VPC (0) | 2025.05.30 |
AWS - CLI설치, Access Key를 이용한 AWS 서비스 이용 (0) | 2025.05.30 |
AWS - 리전, 가용영역(AZ), 로컬영역 (0) | 2025.05.30 |