방화벽 설정 · 4 min read · Jan 08, 2026

우분투 22.04에서 UFW(간단한 방화벽) 시작하기

UFW 또는 간단한 방화벽은 우분투에서 iptables 기반 방화벽을 관리하는 애플리케이션입니다. UFW는 우분투 리눅스의 기본 방화벽 구성 도구이며 방화벽을 구성하는 사용자 친화적인 방법을 제공합니다. UFW 명령은 영어와 비슷하여 명령어를 기억하기 쉽습니다. UFW 방화벽은 IPv4와 IPv6를 지원합니다.

UFW는 GUI 애플리케이션도 제공합니다. GNOME 데스크탑을 사용하는 경우 gufw를 설치할 수 있으며, KDE 데스크탑을 사용하는 경우 kcm-ufw를 설치할 수 있습니다.

전제 조건

  • 16.04와 22.04 사이의 우분투 버전. 최신 우분투 버전도 작동해야 합니다.
  • 루트 권한

이 튜토리얼에서 다루는 내용은 무엇인가요?

  1. UFW 설치.
  2. 기본 UFW 명령 구문.
  3. UFW 허용 및 거부 명령.
  4. 고급 UFW 명령.
  5. UFW에서 규칙 삭제.
  6. UFW 비활성화 및 초기화.

UFW 설치

기본적으로 UFW는 우분투 20.04에 이미 설치되어 있어야 합니다. 다음 명령어로 확인할 수 있습니다:

which ufw

위와 같이 명령어의 경로가 반환되지 않으면 다음 apt 명령어로 UFW를 설치하세요:

sudo apt install ufw

UFW 방화벽 설치

그런 다음 다음 명령어를 실행하여 UFW를 활성화하세요:

sudo ufw enable

결과:

명령이 기존 ssh 연결을 방해할 수 있습니다. 작업을 진행하시겠습니까? (y|n)? y  
방화벽이 활성화되었으며 시스템 시작 시 활성화됩니다.

기본 UFW 명령

“ufw enable” 명령은 기본 규칙으로 UFW를 켭니다. 다음 명령어를 입력하여 UFW가 실행 중인지 확인할 수 있습니다:

sudo ufw status verbose

UFW 상태 확인

결과:

상태: 활성  
로깅: 켜짐 (낮음)  
기본: 거부 (수신), 허용 (발신), 비활성 (라우팅됨)  
새 프로필: 건너뛰기

UFW를 비활성화하거나 끄고 싶다면 다음을 사용할 수 있습니다:

sudo ufw disable

결과:

방화벽이 중지되었으며 시스템 시작 시 비활성화되었습니다.

UFW 허용 및 거부 명령

1. UFW 허용 명령

UFW는 켜면 모든 수신 연결을 거부합니다. 따라서 시스템을 원격으로 관리하려면 서버에 대한 SSH 액세스를 허용해야 합니다. 명령 “ufw allow sshport”는 SSH를 통해 액세스를 허용하며, SSH 서비스의 포트로 SSHPORT를 교체합니다. 기본 SSH 포트는 22입니다.

sudo ufw allow 22

결과:

규칙이 업데이트되었습니다.  
규칙이 업데이트되었습니다 (v6) #IPv6의 경우

TCP 전용으로 포트 22에서 수신 연결을 허용하려면 명령 끝에 “/tcp“를 추가하세요. 다음 예와 같이.

sudo ufw allow 22/tcp

허용하려는 서비스가 기본 포트에서 수신 대기 중인 경우 포트 번호 대신 서비스 이름을 사용할 수 있습니다. 이렇게 하면 포트를 열기가 더 쉬워집니다. UFW는 /etc/services에서 올바른 포트 번호를 찾아줍니다.

이 명령은 기본 SSH 포트를 엽니다:

sudo ufw allow ssh

이제 다음으로 규칙을 확인하세요:

sudo ufw status

UFW에서 SSH 포트 열기

2. UFW 거부 명령

“deny” 명령은 “allow” 명령과 유사하게 작동하며 방화벽에서 포트를 닫는 데 사용됩니다:

포트 옵션으로 거부:

sudo ufw deny 80

결과:

규칙이 업데이트되었습니다.  
규칙이 업데이트되었습니다 (v6)

서비스 이름으로 “deny”의 예. 이 예에서는 http 포트/80을 차단합니다:

sudo ufw deny http

UFW 방화벽으로 서비스 접근 거부

참고:
모든 포트와 해당 서비스 이름은 “/etc/services” 파일에 나열되어 있습니다.

고급 UFW 명령

이제 UFW 명령 구문을 더 깊이 파고들어 포트 범위를 허용하는 방법(예: FTP 수동 포트용)과 특정 IP 또는 서브넷에서만 액세스하는 방법을 배웁니다.

1. 포트 범위 허용

UFW에서 포트 범위를 허용할 수 있습니다. FTP 또는 IRC와 같은 일부 서비스는 클라이언트와 통신하기 위해 포트 범위를 사용합니다.

이 예에서는 내 서버에서 ircd가 사용하는 포트 범위를 허용합니다. 범위는 포트 6660에서 6670입니다:

sudo ufw allow 6660:6670/tcp  
sudo ufw allow 6660:6670/udp

이 명령은 TCP 및 UDP 프로토콜을 통해 포트 6660-6670에 대한 연결을 허용합니다.

2. 특정 IP 주소 허용

특정 IP를 추가하여 모든 서비스에 대한 액세스를 허용할 수 있습니다. 이는 예를 들어 집이나 사무실에서 정적 IP를 가지고 있고 그곳에서 서버의 모든 서비스에 대한 액세스를 허용하려는 경우 유용합니다. 아래 명령은 IP 192.168.1.106이 서버의 모든 포트에 액세스할 수 있도록 허용합니다:

sudo ufw allow from 192.168.1.106

결과:

규칙이 추가되었습니다.

3. 서브넷 허용

서브넷의 모든 IP 주소를 허용하려면 다음과 같이 UFW 명령에 IP 서브넷(범위의 IP 주소)을 추가할 수 있습니다:

sudo ufw allow from 192.168.1.1/24

결과:

경고: 정규화 후 규칙이 변경되었습니다.  
규칙이 추가되었습니다.

4. 특정 IP 주소에서 하나의 포트로의 접근 허용

특정 IP에서 하나의 포트에 대한 접근을 허용하려면 위에서 배운 UFW 명령을 결합할 수 있습니다.

예를 들어, 오직 IP 192.168.1.106만이 ssh 포트 22 TCP에 접근할 수 있으며, 다른 IP는 해당 포트에서 거부됩니다. 다음 명령을 사용할 수 있습니다:

sudo ufw allow from 192.168.1.106 proto tcp to any port 22

결과:

규칙이 추가되었습니다.

5. 특정 포트에 대한 모든 수신 트래픽 허용

포트 80에서 모든 트래픽을 허용하려면 다음 명령을 사용할 수 있습니다:

sudo ufw allow to any port 80

UFW 방화벽 규칙 삭제

이 섹션에서는 UFW에 저장된 규칙을 삭제하는 방법을 배웁니다. “delete“ 명령을 사용하여 ufw 규칙을 삭제할 수 있습니다. “ufw delete“라는 명령어를 입력한 후 삭제하려는 옵션인 allow 또는 deny를 입력하세요.

다음은 몇 가지 예입니다:

서비스 이름으로 SSH 허용 규칙 삭제:

sudo ufw delete allow ssh

결과:

규칙이 삭제되었습니다.  
규칙이 삭제되었습니다 (v6)

이 명령은 “allow ssh“ 규칙을 삭제합니다. 조심하세요, 서버에서 자신을 잠그지 마세요.

포트 80에서 “deny” 규칙 삭제:

sudo ufw delete deny 80

결과:

규칙이 삭제되었습니다.  
규칙이 삭제되었습니다 (v6)

복잡한 규칙이 있는 경우 규칙 ID로 규칙을 식별하고 삭제하는 간단한 방법이 있습니다. 다음 명령어를 실행하여 모든 규칙과 해당 ID의 목록을 가져옵니다:

sudo ufw status numbered

결과:

상태: 활성  
   
     To                             Action      From  
     --                             ------      ----  
[ 1] 22/tcp                     ALLOW IN    Anywhere  
[ 2] 22/tcp (v6)                ALLOW IN    Anywhere (v6)

이제 규칙 번호를 사용하여 IPv6 전용 SSH 규칙을 삭제하세요:

sudo ufw delete 2

UFW 비활성화 및 초기화

규칙을 삭제하지 않고 UFW를 끄고 싶다면, “disable“ 명령을 사용할 수 있습니다:

sudo ufw disable

결과:

방화벽이 중지되었으며 시스템 시작 시 비활성화되었습니다.

UFW 방화벽 초기화

UFW를 완전히 끄고 모든 규칙을 삭제하려면, “reset“ 명령을 사용할 수 있습니다:

sudo ufw reset

결과:

모든 규칙을 설치된 기본값으로 재설정합니다. 이는 기존 ssh 연결을 방해할 수 있습니다. 작업을 진행하시겠습니까? (y|n)? y  
'after6.rules'를 '/etc/ufw/after6.rules.20150918_190351'에 백업합니다.  
'user.rules'를 '/lib/ufw/user.rules.20150918_190351'에 백업합니다.  
'after.rules'를 '/etc/ufw/after.rules.20150918_190351'에 백업합니다.  
'before.rules'를 '/etc/ufw/before.rules.20150918_190351'에 백업합니다.  
'before6.rules'를 '/etc/ufw/before6.rules.20150918_190351'에 백업합니다.  
'user6.rules'를 '/lib/ufw/user6.rules.20150918_190351'에 백업합니다.

결론

UFW(간단한 방화벽)는 우분투의 기본 방화벽 구성 도구입니다. UFW 명령은 영어와 유사하여 사용하기 쉽고 기억하기 쉽습니다. 이 UFW 튜토리얼은 이 훌륭한 방화벽 도구를 시작하는 가이드입니다. UFW에 대해 더 알고 싶다면 우분투 위키나 ufw-manpage를 방문할 수 있습니다.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.