문서의 이전 판입니다!
ufw (Uncomplicated Firewall)
Ubuntu/Debian 계열에서 iptables/nftables 기반 호스트 방화벽 규칙을 간단하게 관리하는 CLI.
Summary
- 기본 정책, 포트 허용/차단, numbered rule 관리, 애플리케이션 프로파일 적용을 간단한 명령으로 처리한다.
- 원격 서버에서
ssh규칙을 먼저 허용하지 않고enable하면 접속이 끊길 수 있다.
Usage
sudo ufw <command> [options] [ARGS...]
ufw COMMAND [OPTIONS…] ARGSufw allow RULE: 허용 규칙 추가ufw deny RULE: 차단 규칙 추가ufw delete RULE_OR_NUM: 규칙 삭제ufw insert NUM RULE: 특정 순서에 규칙 삽입ufw status verbose: 현재 정책과 기본 동작 확인ufw show ARG: 내부 보고서 출력
Commands
enable,disable: 방화벽 활성화/비활성화default allow|deny|reject: 기본 정책 설정allow,deny,reject: 포트, 서비스, 출발지, 프로토콜 기준 규칙 추가delete: 규칙 표현식 또는 numbered rule 번호로 삭제insert: numbered rule 앞에 새 규칙 삽입reload: 현재 규칙 재적용reset: 전체 규칙 초기화.운영 중인 서버에서는 주의status,status numbered,status verbose: 상태 조회logging on|off|low|medium|high|full: 로그 레벨 설정app list,app info: 애플리케이션 프로파일 조회
Examples
원격 서버에서는 먼저
sudo ufw allow ssh 또는 sudo ufw allow 22/tcp 를 적용한 뒤 sudo ufw enable 을 실행한다.
# 활성화 / 비활성화 sudo ufw enable sudo ufw disable # 상태 확인 sudo ufw status sudo ufw status verbose sudo ufw status numbered # 기본 정책 sudo ufw default deny sudo ufw default allow # 포트 / 서비스 허용 sudo ufw allow 22 sudo ufw allow 22 comment 'ssh' sudo ufw allow 22/tcp sudo ufw allow 22/udp sudo ufw allow ssh # 출발지 제한 허용 sudo ufw allow from 192.168.0.100 sudo ufw allow from 192.168.0.0/24 sudo ufw allow from 192.168.0.100 to any port 22 sudo ufw allow from 192.168.0.100 to any port 22 proto tcp # 차단 sudo ufw deny 22 sudo ufw deny 22/tcp sudo ufw deny 22/udp sudo ufw deny ssh # 삭제 sudo ufw delete deny 22 sudo ufw delete deny 22/tcp sudo ufw delete deny 22/udp sudo ufw delete deny ssh # numbered rule 관리 sudo ufw delete 1 sudo ufw insert 1 allow from 192.168.0.100 # 로그 sudo ufw logging on sudo ufw logging off # 내부 규칙 확인 sudo ufw show raw
Config
/etc/ufw/before.rules: IPv4 pre-rule 조정 파일/etc/ufw/after.rules: IPv4 post-rule 조정 파일/etc/ufw/user.rules: 사용자 규칙/etc/ufw/applications.d/: 애플리케이션 프로파일/etc/services: 서비스명과 포트 매핑 확인
ICMP
ping 허용 여부는 before.rules 의 ICMP 관련 ACCEPT 규칙으로 제어한다.
- /etc/ufw/before.rules
<code text> -A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT -A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT -A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT -A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT </code>
Troubleshooting
sudo ufw status verbose로 기본 정책과 logging 상태를 먼저 확인한다.sudo ufw status numbered로 규칙 번호를 확인한 뒤delete NUM또는insert NUM …로 순서를 조정한다.ssh접속이 필요한 서버에서 규칙 적용 전allow ssh를 먼저 추가한다.- 서비스명 조회 예제가 필요하면
less /etc/services로 로컬 매핑을 확인한다.
Installation
sudo apt install ufw
Help
Related
History
- codex:: 2026-06-20 Reorganized ufw into the standard CLI reference structure and preserved firewall rule examples.