EQVPS

VPS에서 UFW 방화벽 구성하는 방법

UFW로 간단하고 효과적인 방화벽을 설정하세요: 먼저 SSH를 허용해 스스로 잠기지 않게 하고, 필요한 포트만 열고, 활성화합니다. 몇 개의 명령으로 깔끔한 기본 거부 방화벽을 만듭니다.

방화벽은 서버의 어떤 포트가 외부로부터의 연결을 받아들일지를 결정합니다. 명시적으로 열지 않은 모든 것은 닫혀 있어야 하는데 — 이것이 **기본 거부(default-deny)**이며, 공격면을 실제로 운영하는 서비스만으로 줄여줍니다. UFW는 이를 간단하게 만들어 줍니다. 정확히 지켜야 할 한 가지는 순서입니다: 방화벽을 켜기 전에 SSH를 허용하세요. 그렇지 않으면 스스로 잠기게 됩니다.

1. UFW 설치 (보통 이미 설치되어 있음)

sudo apt update && sudo apt install -y ufw

2. 다른 무엇보다 먼저 — SSH부터 허용

이것이 잠김을 막는 단계입니다. enable 전에 하세요:

sudo ufw allow OpenSSH
# 커스텀 SSH 포트를 사용한다면:
# sudo ufw allow 22/tcp

3. 필요한 포트만 열기

sudo ufw allow 80/tcp     # HTTP, 웹사이트를 서비스한다면
sudo ufw allow 443/tcp    # HTTPS
# 필요할 때만 앱별 포트 추가, 예:
# sudo ufw allow 51820/udp   # WireGuard VPN

4. 기본 정책 설정 및 활성화

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable           # 확인을 요청함

5. 확인

sudo ufw status verbose

SSH와 선택한 포트들이 허용되고, 나머지는 모두 거부되어 있어야 합니다. 변경할 때마다 이를 확인하세요.

자주 하는 작업

sudo ufw allow 3000/tcp        # 포트 열기
sudo ufw delete allow 3000/tcp # 다시 닫기
sudo ufw status numbered       # 번호와 함께 규칙 목록
sudo ufw delete 2              # 2번 규칙 삭제
sudo ufw disable               # 방화벽 끄기

솔직한 주의

다음 단계

방화벽과 키가 있으면 견고한 서버의 대부분이 완성됩니다. 새 VPS 보안 체크리스트로 마무리하세요. 웹 앱을 위해 443을 여시나요? HTTPS를 지원하는 nginx 리버스 프록시 설정 방법을 참고하세요.

자주 묻는 질문

UFW란 무엇인가요?

UFW(Uncomplicated Firewall)는 Ubuntu와 Debian에 기본 탑재된, Linux netfilter 방화벽을 위한 친절한 프런트엔드입니다. 원시 iptables 규칙을 작성하는 대신 '443을 허용'과 같이 말하면 UFW가 나머지를 처리합니다. 정상적인 기본 거부 방화벽에 이르는 가장 빠른 길입니다.

왜 UFW를 활성화하기 전에 SSH를 허용해야 하나요?

기본 거부 방화벽을 활성화하는 순간, 명시적으로 허용되지 않은 모든 포트(포트 22 포함)가 차단되기 때문입니다. SSH를 먼저 허용하지 않고 UFW를 활성화하면 현재 연결은 살아남지만 다음 로그인은 거부되어 잠기게 됩니다. 항상 'ufw enable' 전에 'ufw allow OpenSSH'(또는 'ufw allow 22/tcp')를 실행하세요.

어떤 포트를 열어야 하나요?

실제로 사용하는 포트만입니다. 서버 관리를 위한 SSH(22), 웹사이트나 리버스 프록시를 운영한다면 80과 443, 그리고 앱에 필요한 특정 포트들. 나머지는 모두 닫아 둡니다. 열린 포트가 적을수록 공격면도 작아집니다.

UFW가 모든 것을 막아주나요?

아니요 — UFW는 어떤 포트가 연결을 받아들일지를 제어하며 이것만으로도 중요한 역할을 하지만, 이미 열어 둔 포트의 트래픽 내용까지 검사하지는 않습니다. SSH 키, 무차별 대입 방어를 위한 fail2ban, 그리고 소프트웨어 패치 유지와 함께 사용하세요. 방화벽은 하나의 계층이지 벽 전체가 아닙니다.

현재 무엇이 허용되어 있는지 어떻게 확인하나요?

'sudo ufw status verbose'를 실행하세요. 활성화된 모든 규칙과 UFW 활성화 여부를 나열합니다. 변경할 때마다 확인해서 정확히 무엇이 열려 있는지 항상 파악하세요.

댓글

아직 댓글이 없습니다. 첫 번째가 되세요.

댓글 남기기

댓글은 표시되기 전에 검토됩니다.