Aller au contenu principal

30. Configure Packet Filtering Firewall


개요

방화벽은 애플리케이션에 도달하기 전에 원하지 않는 네트워크 데이터를 차단하여 서버 보안을 강화합니다. Linux 패킷 필터링 방화벽은 네트워크 패킷 레벨에서 직접 작동하여 애플리케이션이 처리하기 전에 악성 트래픽을 차단합니다.

UFW 시작하기

UFW(Uncomplicated Firewall)는 Ubuntu의 가장 간단한 방화벽 설정 도구입니다. 기본적으로 비활성화되어 있습니다.

상태 확인:

sudo ufw status

활성화 전 SSH 허용:

sudo ufw allow 22

방화벽 활성화:

sudo ufw enable

상세 상태 확인:

sudo ufw status verbose

기본 정책: 인바운드 트래픽 거부, 아웃바운드 트래픽 허용, 라우팅 패킷 초기 차단.

IP 주소로 SSH 제한

특정 IP에서만 SSH 접근을 허용합니다:

sudo ufw allow from 10.0.0.192 to any port 22

번호가 붙은 규칙 확인:

sudo ufw status numbered

인덱스로 규칙 삭제:

sudo ufw delete 1

또는 규칙 지정으로 삭제:

sudo ufw delete allow 22

IP 범위 규칙과 예외

서브넷 전체 허용:

sudo ufw allow from 10.0.0.0/24 to any port 22

허용된 범위 내 특정 IP 차단 (deny 규칙을 먼저 삽입):

sudo ufw insert 1 deny from 10.0.0.37
방화벽 규칙은 순서대로 처리되므로 규칙 순서가 중요합니다.

특정 인터페이스의 아웃바운드 트래픽 차단

인터페이스를 확인한 후 아웃바운드 트래픽을 차단합니다:

sudo ufw deny out on enp0s3 to 8.8.8.8

아웃바운드 규칙에서 "from"은 자신의 IP, "to"는 목적지입니다.

복잡한 UFW 규칙

인터페이스, 출발지, 목적지, 포트, 프로토콜을 모두 지정하는 상세 규칙:

sudo ufw allow in on enp0s3 from 10.0.0.192 to 10.0.0.100 proto tcp
sudo ufw allow out on enp0s3 from 10.0.0.100 to 10.0.0.192 proto tcp

핵심 요점

  • UFW는 화이트리스트 방식 — 명시적으로 허용된 트래픽만 통과
  • 규칙 순서가 중요: 순차적으로 평가됨
  • 인터페이스, IP, 프로토콜을 지정하여 세밀한 제어 가능
  • 고급 설정은 ufw --help 참조