UFW

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

UFW (Uncomplicated Firewall)는 리눅스 시스템에서 사용되는 방화벽 설정 도구이다. 명령줄 인터페이스(CLI)를 통해 방화벽 규칙을 설정하고 관리할 수 있으며, Gufw와 같은 그래픽 사용자 인터페이스(GUI)를 제공하여 사용 편의성을 높였다. UFW는 Netfilter의 기능을 활용하여 다양한 고급 기능을 제공하며, IPv6 지원, 로깅, 속도 제한 등의 기능을 포함한다.

UFW - [IT 관련 정보]에 관한 문서
일반 정보

이미지 준비중입니다.

UFW 로고
개발자Canonical Ltd.
작성자제이미 스트랜보그(Jamie Strandboge,2007-12-13)
발표일2016년 10월 1일
최신 버전0.36.2
최신 버전 발표일2023년 5월 18일
프로그래밍 언어파이썬
운영 체제리눅스
라이선스GNU 일반 공중 사용 허가서
웹사이트UFW Launchpad
UFW 매뉴얼 페이지
설명단순화된 넷필터 인터페이스
📚 더 읽어볼만한 페이지
  • 자유 보안 소프트웨어 - 클램윈
    클램윈은 ClamAV 엔진 기반의 오픈 소스 백신 소프트웨어로, 트로이 목마, 바이러스, 멀웨어 등 다양한 악성 위협 분석 자료를 제공하며 예약 검사, 수동 검사, 컨텍스트 메뉴 통합 등의 기능을 지원하지만 실시간 감시 기능은 제공하지 않는다.
  • 자유 보안 소프트웨어 - OpenSSL
    OpenSSL은 1998년에 설립된 암호화 도구 프로젝트로, 다양한 암호화 알고리즘과 프로토콜을 지원하며, 아파치 라이선스를 채택했고, 보안 문제와 API 호환성 문제 등의 비판을 받았다.
  • GTK를 사용하는 소프트웨어 - 유니티 (사용자 인터페이스)
    유니티는 캐노니컬에서 개발한 데스크톱 환경 셸로, 우분투에서 기본 사용자 인터페이스로 사용되었으며, 런처, 퀵리스트, 대시 등의 구성 요소로 사용자가 애플리케이션과 시스템 기능에 접근하도록 설계되었으나 개발 중단 후 커뮤니티에 의해 Lomiri로 개발되고 우분투 유니티 배포판으로 사용된다.
  • GTK를 사용하는 소프트웨어 - 웹킷
    웹킷은 KDE의 KHTML에서 시작된 오픈 소스 웹 브라우저 엔진으로, 애플 Safari 브라우저의 렌더링 엔진으로 사용되면서 다양한 운영체제와 플랫폼으로 이식되어 HTML5, CSS3 등 최신 웹 표준을 지원한다.
  • 방화벽 소프트웨어 - 만리방화벽
    만리방화벽은 중국 정부가 인터넷 검열과 통제를 목적으로 구축한 시스템으로, IP 주소 차단, DNS 스푸핑, URL 필터링 등의 기술을 사용하여 특정 웹사이트나 정보에 대한 접근을 차단한다.
  • 방화벽 소프트웨어 - 방화벽 (네트워킹)
    방화벽은 네트워크 보안을 위해 트래픽을 검사 및 제어하는 시스템으로, 설정된 규칙에 따라 패킷을 필터링하며, 다양한 종류와 기능을 가지고 로그를 기록 및 관리한다.

2. 명령어 사용법 (CLI)

UFW는 기본적으로 명령어 인터페이스(CLI)를 통해 제어된다.

UFW를 설치하고 사용하기 위한 기본적인 명령어는 다음과 같다.

👆
좌우로 밀어서 보기
명령어설명
apt-get install ufw
UFW 설치
ufw help
UFW 사용 방법 확인
sudo ufw enable
UFW 작동
sudo ufw allow 80
80번 서버 포트 열기

2.1. 기본 명령어

👆
좌우로 밀어서 보기
명령어설명
apt-get install ufw
UFW 설치
ufw help
UFW 사용 방법 확인
sudo ufw enable
UFW 작동
sudo ufw allow 80
80번 서버 포트 열기

2.2. 방화벽 규칙 설정

UFW는 기본적으로 설치되어 있지 않으므로, 설치해야 사용할 수 있다. UFW를 설치하려면 `apt-get install ufw` 명령어를 사용한다. UFW 사용법은 `ufw help` 명령어를 통해 확인할 수 있다.

UFW를 작동시키려면 `sudo ufw enable` 명령어를 사용한다. 80번 포트를 열려면 `sudo ufw allow 80` 명령어를 사용한다.

3. 그래픽 사용자 인터페이스 (GUI)

UFW는 명령어 사용에 익숙하지 않은 사용자를 위해 다양한 GUI 프론트엔드를 제공한다. 대표적인 GUI 도구로는 Gufw, kmyfirewall, UFW KControl 모듈, UFW 프론트엔드 등이 있다.

3.1. Gufw

Gufw는 UFW를 관리하기 위한 쉽고 직관적인 그래픽 사용자 인터페이스를 제공한다. 일반적인 P2P 연결 또는 개별 포트를 허용하거나 차단하는 등의 작업을 지원한다. Gufw는 우분투를 위해 설계되었지만, 데비안 기반 배포판 및 아치 리눅스에서도 사용 가능하며, 파이썬, GTK 및 UFW를 사용할 수 있는 곳이면 어디에서든 사용 가능하다.

Uncomplicated Firewall용 GUI
Uncomplicated Firewall용 GUI

3.2. 기타 GUI 도구

kmyfirewall은 KLajos 등이 개발했으며 Qt 플랫폼 기반이다. GNU 일반 공중 사용 허가서 라이선스를 따른다.

UFW KControl 모듈은 Qt 플랫폼 기반이며, GNU 일반 공중 사용 허가서 라이선스를 따른다. 공식 웹사이트는 UFW KControl 모듈이다.

UFW 프론트엔드는 Darwin Bautista가 개발했으며, 파이썬과 PyGTK를 사용한다. 2012년에 0.3.2 버전이 출시되었다. GNU 일반 공중 사용 허가서 라이선스를 따르며, 공식 웹사이트는 UFW 프론트엔드이다.

4. 고급 기능

UFW는 다양한 고급 기능을 제공하여 방화벽 설정을 세밀하게 제어할 수 있도록 돕는다. 다음은 주요 고급 기능에 대한 표이다.

👆
좌우로 밀어서 보기
Netfilter 기능0.16.2
(8.04 LTS)
0.30
(10.04 LTS)
0.31.1-1
(12.04 LTS)
0.34-0
(14.04 LTS)
0.35-0
(16.04 LTS)
기본 인바운드 정책 (허용/거부)
인바운드 규칙 허용/거부
IPv6
상태
로깅 (켜기/끄기)
확장 가능한 프레임워크
애플리케이션 통합
인바운드 규칙 제한 (속도 제한)
멀티포트 인바운드 규칙
debconf/프리시딩
기본 인바운드 정책 (거부)
인바운드 규칙 거부
규칙 삽입
로그 레벨
규칙별 로깅
아웃바운드 필터링 (인바운드와 동일)
인터페이스별 필터링
Bash 완성
Upstart 지원
개선된 보고
초기화 명령
rsyslog 지원
규칙 번호로 삭제
Python 2.6 지원
'listening 표시' 보고서
Python 2.7 지원
증가된 프로토콜 지원 (AH, ESP)
'limit' 명령어를 통한 IPv6 속도 제한
Python 3.2 지원아니요
Python 3.3 지원
'추가 표시' 보고서
Python 3.4 지원
전/후 확장성 훅
라우팅된 패킷 필터링 (FORWARD)
systemd 지원
증가된 프로토콜 지원 (IGMP, GRE)
Python 3.5 지원
Ubuntu Core용 Snappy 지원
규칙별 주석