📚 네트워크 · 패킷 분석 › 06. 방화벽 · IDS 기초 — 256편
이전 글: 255. Application Firewall · 다음 글: 257. ACL
Firewall Rule(방화벽 규칙) 은 "어떤 조건에 맞는 트래픽을 어떻게 처리할 것인가"를 적은 정책의 한 줄입니다. 정책 전체의 저장 구조와 운영 주기는 04 영역 181. Firewall 정책에서 다뤘고, 이 글은 규칙 한 줄을 읽고, 규칙들 사이의 관계에서 생기는 문제를 찾는 방법을 다룹니다.
규칙은 조건(Match) 과 동작(Action) 으로 나뉩니다.
| 구분 | 요소 | 자세히 다루는 글 |
|---|---|---|
| 조건 | 출발지 IP | 258. Source IP 정책 |
| 조건 | 목적지 IP | 259. Destination IP 정책 |
| 조건 | 출발지 / 목적지 포트 | 260. Source Port 정책, 261. Destination Port 정책 |
| 조건 | 프로토콜 | 262. Protocol 정책 |
| 조건 | 방향(Zone·인터페이스) | 263. Inbound Policy, 264. Outbound Policy |
| 동작 | Allow / Deny, 로그 | 265. Allow Policy, 266. Deny Policy, 271. Firewall Logging |
한 규칙 안의 조건들은 모두 만족(AND) 해야 일치합니다. 조건 하나에 여러 값을 넣으면(예: 포트 80, 443) 그 안에서는 하나만 만족(OR) 하면 됩니다.
규칙은 위에서부터 비교하며 처음 일치한 규칙의 동작이 적용됩니다. 이 방식 때문에 규칙 사이에 다음 관계가 생깁니다.
규칙 1: 10.10.0.0/16 → any tcp any Allow
규칙 2: 10.10.5.0/24 → 10.20.0.30 tcp 3389 Deny ← 규칙 1에 가려짐
↓
10.10.5.14 → 10.20.0.30:3389 패킷
↓ 규칙 1 조건(출발지 포함, 목적지 any, TCP any) 모두 일치
↓ Allow 적용, 비교 종료
규칙 2는 한 번도 적중하지 않음 (hit count 0)
| 규칙 관계 | 정의 | 결과 |
|---|---|---|
| 가려진 규칙(Shadowed) | 위 규칙이 아래 규칙의 범위를 모두 포함하고 동작이 다름 | 아래 규칙은 절대 적용되지 않음 |
| 중복 규칙(Redundant) | 위 규칙이 포함하고 동작도 같음 | 삭제해도 결과 동일, 관리 혼란 |
| 상관 규칙(Correlated) | 범위가 일부만 겹치고 동작이 다름 | 순서를 바꾸면 결과가 달라짐 |
| 과도한 허용(Overly Permissive) | any가 포함된 넓은 허용 | 의도하지 않은 통신까지 허용 |
iptables에서 규칙 번호와 적중 수를 확인하는 실습 예시입니다(Rocky/Ubuntu 공통, 값은 환경마다 다름).
# 규칙 번호, 패킷/바이트 적중 수, 숫자 주소로 출력
sudo iptables -L FORWARD -n -v --line-numbers
# nftables 환경: handle 번호와 counter 확인 (규칙에 counter가 있어야 표시)
sudo nft -a list chain inet fw forward
# 출력 형식 예시 (값은 환경마다 다름)
num pkts bytes target prot opt in out source destination
1 8421 612K ACCEPT tcp -- ens37 ens38 10.10.0.0/16 0.0.0.0/0
2 0 0 DROP tcp -- ens37 ens38 10.10.5.0/24 10.20.0.30 tcp dpt:3389
2번 규칙의 적중 수가 0인 것은 "그런 트래픽이 없었다"가 아니라 1번 규칙이 먼저 가져갔기 때문일 수 있습니다. 순서를 바꾸면(2번을 1번 위로) 의도대로 동작합니다.
분석 방법 — 가려진 규칙을 찾을 때는 각 규칙의 출발지·목적지·서비스를 범위로 보고, 위쪽 규칙이 아래 규칙의 범위를 모두 포함하는지 비교합니다.
관제자가 확인할 질문
| 로그 상황 | 의심할 규칙 문제 |
|---|---|
| 의도와 다른 규칙 이름으로 허용 | 가려진 규칙, 넓은 허용 규칙 |
| 특정 규칙 적중이 급증 | 새 서비스, 스캔, 악성 통신 |
| 기본 차단 규칙 적중 급증 | 누락된 허용 규칙 또는 외부 스캔 |
오탐 주의: 적중 수 0인 규칙이 모두 불필요한 것은 아닙니다. 재해 복구·분기 작업처럼 드물게 쓰이는 규칙도 있으므로 담당자 확인 후 정리합니다.