- 방화벽은 외부의 패킷이 내부로 들어오기전에 필터링을 하여 불법적으로 접근하는 것을 차단하는 시스템
1. 패킷 필터링 방식
- 네트워크 계층 ~ 전송 계층에서 동착(layer 3,4)
- 패킷헤더의 주소(출발지, 목적지 ip 등)와 서비스 포트를 통제
- 속도가 빠름(패킷헤더만 보니깐..)
- 헤더 조작에 취약, 패킷 내부 데이터 파악 어려움
2. 어플리케이션 게이트웨이 방식
- 패킷 필터링에서 응용 계층(layer 7) 까지 확대하여 동작
- 하나의 서비스(프로그램)마다 방화벽에 프록시 데몬 생성하고 정책에 맞게 프록시와 끝단(출발지/목적지)에 붙여줄지 결정
- IP주소, 포트 외에도 패킷 내부의 데이터까지 통제 가능
- 데이터까지 통제하기에 보안성 높음
- 서비스 추가 시 프록시가 늘어나며, 처리속도도 늘어나 네트워크 통신 부하 발생
3. 서킷 게이트웨이 방식
- 어플리케이션 게이트웨이 방식과 다르게 하나의 서비스 추가되면 프록시가 무조건적으로 생성하는게 아닌 공통적인 프록시가 존재
- 어플리케이션 게이트웨이 방식보단 네트워크 부하 개선
- 서킷 게이트 방화벽 인식할 수 있도록 클라이언트에 프로그램 설치 필요
4. 상태 추적
- 응용 계층(layer 7)에서 데이터링크 계층(layer 2)과 네트워크 계층(layer 3)에서 패킷을 상태정보 테이블에 일정시간 저장하여 빠른속도로 처리 및 패킷 변조 제어
- 리눅스 iptables가 사용하는 방식