방화벽 패킷 필터링 규칙
설명 영상 패킷 필터링 방화벽 규칙 · 2:37
핵심 정리
패킷 필터링은 내부 네트워크와 외부 네트워크 사이를 오가는 패킷을 미리 정한 규칙에 따라 허용하거나 차단하는 방화벽 기능이다. 방화벽은 내부 보안 정책을 충족하는 트래픽만 통과시키는 정책 기반 접근 통제 장치다. 방화벽은 외부 네트워크에서 내부 네트워크로 들어오는 침입을 막는다. 패킷 필터링의 핵심은 통과시킬 트래픽을 정책으로 정하는 데 있다. 방화벽 관리자는 보호할 네트워크에 적용할 규칙이나 정책을 설정해야 하며, 설정이 없으면 기본 정책이 적용된다.
패킷 필터링은 패킷의 헤더 정보를 근거로 판단한다. 규칙은 출발지와 목적지 주소, 프로토콜, 포트를 조건으로 삼으며, 조건에 맞는 패킷만 허용된다. 이때 가장 중요한 원칙은 허용 규칙이 없는 트래픽을 어떻게 처리하는지다. 허용 규칙에 없는 트래픽은 기본적으로 차단한다. 따라서 특정 서비스를 통과시키려면 그 서비스를 허용하는 규칙이 있어야 한다.
패킷 필터링의 장점은 처리 속도다. 패킷 필터는 주로 커널 수준에서 수행되며, 프록시 방식보다 검사가 제한적이어서 더 많은 트래픽을 처리할 수 있다. 반면 패킷 자체만 보는 무상태 방식은 모든 패킷의 정책을 검사하므로 정책이 많아질수록 느려진다. 이 한계를 보완하기 위해 세션을 관리하는 상태 기반 방식을 사용한다.
출구 방향의 통제도 같은 원리로 이루어진다. 이그레스 필터링은 내부에서 외부로 나가는 패킷의 소스 주소가 내부 네트워크 주소가 아니면 차단하는 필터링이다. 출구 필터링은 비인가 또는 악성 트래픽이 내부 네트워크 밖으로 나가지 못하게 하는 것을 목표로 한다.
자세히
허용 규칙과 Any 지정
규칙의 출발지를 Any로 지정하면 해당 서비스는 모든 IP 대역에서 허용된다. 반대로 목적지를 Any로 두고 포트를 지정하면 해당 포트로 향하는 트래픽이 허용된다. 두 경우 모두 허용 규칙이므로, 출발지와 목적지 중 어느 주소를 Any로 지정했는지가 허용 범위를 정한다. 출발지 Any는 출처 제한 없음 목적지 Any와 포트 지정은 허용 범위를 포트 단위로 좁힌다. 선지를 읽을 때 출발지, 목적지, 포트를 차례로 구분하면 허용 범위를 혼동하지 않는다.
헤더 정보 기반 필터링과 포트 기준 정책
스크리닝 라우터는 IP, TCP, UDP 헤더에 포함된 정보를 분석해 패킷을 필터링한다. 헤더에는 주소, 프로토콜, 포트 정보가 담기므로 규칙도 이 항목을 기준으로 세운다. 헤더 정보 기준 판단 출발지 주소는 패킷을 보낸 쪽의 주소이고, 목적지 주소는 패킷을 받는 쪽의 주소다. iptables에서는 목적지 주소를 -d, 프로토콜을 -p, 목적지 포트를 --dport 옵션으로 지정한다. 방화벽은 포트 번호를 기준으로 응용별 접근통제 정책을 설정할 수 있다.
스크리닝 라우터와 배스천 호스트
스크리닝 라우터는 패킷 필터링만으로 외부와 내부 네트워크의 경계를 지키는 가장 단순한 구성이다. 배스천 호스트는 내부 네트워크와 외부 네트워크 사이에서 게이트웨이 역할을 한다. 두 장치는 헤더 정보를 보고 패킷을 거르는지, 내부와 외부 사이에서 출입을 맡는 관문인지로 구분된다. 배스천 호스트가 손상되면 내부 네트워크를 보호할 수 없다.
이어지는 내용
- 출구 필터링과 아웃바운드 허점
- 무상태와 상태 기반 방식
- 응용 계층 필터링과의 차이
- 자주 헷갈리는 것
- 기출에서는
로그인하면 하루 5페이지까지 무료로 전체를 읽을 수 있습니다.
앱에서 이 절 읽기