1. 세션(Session)이란?
네트워크에서의 '세션'은 두 장비 간의 연결 상태를 의미한다.
TCP 연결을 기준으로 보면, 3-way 핸드셰이크를 통해 세션이 시작되고,
FIN이나 RST 패킷으로 종료된다.
방화벽은 이러한 세션 정보를 기억해서
상태 기반 검사(Stateful Inspection)를 가능하게 한다.
2. 세션 테이블이란?
세션 테이블은 방화벽 내부에서
현재 통신 중인 트래픽의 상태를 저장하고 추적하는 메모리 기반의 테이블 구조다.
이 테이블은 다음과 같은 항목들을 포함한다:
- Source IP / Port
- Destination IP / Port
- Protocol (TCP, UDP 등)
- Interface or Zone
- 세션 상태 (ESTABLISHED, TIME_WAIT 등)
- 타이머 (비활성 시간 후 세션 종료)
- 정책 ID 또는 처리 결과
3. 왜 세션 테이블이 필요한가?
패킷 하나만 보고 허용/차단을 결정하는 것은 한계가 있다.
세션 정보를 기억하면, 다음과 같은 이점이 있다:
- 응답 트래픽 자동 허용: 클라이언트 → 서버 요청을 허용하면, 응답도 자동 허용
- 불필요한 정책 중복 제거: 한 방향만 정책 설정해도 양방향 통신 가능
- 비정상 연결 탐지 가능: 연결 없이 응답만 오는 경우, 세션 없는 패킷으로 차단
- 속도 개선: 매번 정책을 새로 확인하지 않고, 세션 테이블만 조회해 빠르게 처리
4. 세션 흐름 예시 (TCP 기준)
- 클라이언트 → 서버 : SYN
→ 방화벽은 정책에 따라 허용 여부 판단 → 허용 시 세션 테이블 등록 - 서버 → 클라이언트 : SYN-ACK
→ 기존 세션과 일치하면 통과 (추가 정책 검사 없이) - 클라이언트 → 서버 : ACK
→ 세션 활성화, 이후 트래픽은 세션 기반으로 흐름 유지 - 통신 종료 시 : FIN or RST
→ 세션 종료 처리 및 테이블에서 삭제
5. 세션 테이블 관련 고려사항
- 세션 타임아웃 설정 (TCP, UDP 별로 다르게 적용됨)
- 동시 세션 수 제한 → 방화벽 용량과 성능과 직결
- 세션 테이블 조회 CLI 명령 (show session, get session, 등)
- DDoS 대응 시 세션 기반 임계치 탐지 사용
.
'Network & Security' 카테고리의 다른 글
[Network & Security] 방화벽 정책 구성의 기본 개념 (0) | 2025.04.30 |
---|---|
[Network & Security] Stateful Inspection이란? (0) | 2025.04.21 |
[Network & Security] 방화벽(Firewall)이란? – 기본 개념과 동작 방식 (0) | 2025.04.13 |
[Network & Security] DLP, DRM 이란 (0) | 2024.04.01 |
[Network & Security] EOS, EOD, EOL, EOSL 이란 (0) | 2023.10.30 |