테마
방화벽과 보안 인프라
네트워크 보안의 기초
네트워크 보안 장비는 데이터를 어떤 단위로 검사하느냐, 그리고 어떤 구조로 배치하느냐에 따라 분류됩니다.
패킷 필터링 방화벽
가장 기본적인 방화벽으로, IP 주소와 포트 번호를 기반으로 패킷의 통과를 허용하거나 차단합니다.
NAT가 제공하는 보안도 본질적으로 패킷 필터링 방화벽과 유사합니다. 외부에서 들어오는 패킷 중 NAT 테이블에 매핑이 없는 것은 차단됩니다.
Stateful Inspection 방화벽
단순한 패킷 필터링을 넘어 TCP 연결 상태의 적정성을 검사하는 방화벽입니다.
Stateful Inspection이 검사하는 것:
- 연결도 안 했는데 데이터가 오는 경우 -> 차단
- SYN 없이 ACK만 오는 경우 -> 차단
- 연결 중에 갑자기 FIN이 오는 비정상 패턴 -> 차단
IDS와 IPS
IDS(Intrusion Detection System) - 침입 탐지 시스템
네트워크 트래픽을 모니터링하여 이상 징후를 탐지합니다. 탐지만 하고 직접 차단하지는 않습니다.
- 아웃 오브 패스(Out-of-Path) 구조
- 포트 미러링으로 트래픽 사본을 분석
- 택배 비유: 어머니가 택배 내용물을 보고 영희에게 그냥 전달하는 것
IPS(Intrusion Prevention System) - 침입 방지 시스템
탐지뿐 아니라 실시간으로 차단까지 수행합니다.
- 인라인(Inline) 구조
- 트래픽이 IPS를 통과하도록 배치
- 택배 비유: 어머니가 택배 내용물이 위험하면 반송시키는 것
WAF(Web Application Firewall)
웹 애플리케이션에 특화된 방화벽입니다. HTTP/HTTPS 트래픽의 내용(스트림 데이터)을 분석합니다.
WAF의 핵심 특징:
- 리버스 프록시(Reverse Proxy) 구조로 동작
- 사용자는 WAF에 접속하지만 실제 웹 서버라고 인식
- 스트림 단위(L7)로 데이터를 분석
- 게시판 첨부 파일의 악성 코드까지 검사 가능
프록시 구조의 종류
Forward Proxy (일반 프록시)
클라이언트 측에 위치하여 외부 접속을 대리합니다.
Reverse Proxy
서버 측에 위치하여 클라이언트 요청을 대리 수신합니다.
용도:
- 부하 분산 (Load Balancing): ALB가 대표적
- 보안 (WAF): 서버 보호
- TLS 터미네이션: 암호화/복호화 처리
- 캐싱: CloudFront나 nginx 같은 리버스 프록시 계층에서 자주 요청되는 콘텐츠를 저장
AWS의 보안 서비스
Security Group (보안 그룹)
인스턴스 수준의 가상 방화벽입니다. Stateful 방식으로 동작합니다.
NACL(Network Access Control List)
서브넷 수준의 방화벽입니다. Stateless 방식으로 동작합니다.
| 구분 | Security Group | NACL |
|---|---|---|
| 적용 범위 | 인스턴스 | 서브넷 |
| 상태 관리 | Stateful | Stateless |
| 규칙 방식 | 허용 규칙만 | 허용/거부 규칙 |
| 기본 동작 | 모두 거부 | 모두 허용 |
| 규칙 평가 | 모든 규칙 평가 | 번호 순서대로 |
AWS WAF
AWS에서 제공하는 관리형 웹 애플리케이션 방화벽입니다. CloudFront, ALB, API Gateway 앞단에 배치할 수 있습니다.
AWS WAF로 차단할 수 있는 공격:
- SQL Injection
- Cross-Site Scripting (XSS)
- 특정 국가/IP 대역 차단
- Rate Limiting (과도한 요청 제한)
- Bot 탐지 및 차단