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 참조