WireGuard · 2026-01-02

pfSense에 WireGuard 설치와 구성 방법

pfSense에서 WireGuard를 설치하고 인터페이스, 키 생성, 피어 등록, 방화벽 규칙과 NAT를 포함한 구성 절차를 단계별로 정리한 설치 과정

작성일 : 2026-01-02 ㆍ 작성자 : 관리자
post
목차

소개

WireGuard는 가볍고 빠른 VPN 프로토콜이다. pfSense에 WireGuard를 적용하면 원격 접속과 사이트 간 연결을 단순하고 안전하게 구현할 수 있다. 본문은 초보자도 이해할 수 있도록 설치 전 준비사항부터 실제 구성 예제까지 차근차근 설명한다.

사전 준비

필수 항목

  • pfSense 최신 버전(패키지 기반 설치가 가능한 버전)
  • 관리자 권한으로 접근 가능한 웹 GUI 또는 SSH 접속
  • 관리 콘솔에서의 방화벽 포트(예: UDP 51820) 개방 계획

설치 전 확인 사항

  • 인터넷 연결 및 공인 IP 또는 포트 포워딩 여부
  • 내부 네트워크 대역(예: 192.168.1.0/24)과 충돌하지 않는 WireGuard 서브넷 결정(예: 10.10.0.0/24)

WireGuard 패키지 설치

pfSense의 패키지 관리자를 통해 WireGuard를 설치하는 방법이 가장 안전하다. 웹 GUI에서 진행할 때의 핵심 절차는 다음과 같다.

  • System > Package Manager > Available Packages로 이동
  • 목록에서 WireGuard 패키지 검색 후 Install 클릭
  • 설치 완료 후 Services 또는 Interfaces 메뉴에 WireGuard 항목이 추가되는지 확인

키 생성 방법

WireGuard는 공개키와 개인키로 동작한다. 키는 pfSense에서 직접 만들거나 로컬 리눅스/윈도우에서 생성해 입력할 수 있다. 로컬 리눅스에서 생성하는 예시는 다음과 같다.

wg genkey | tee privatekey | wg pubkey > publickey
# privatekey와 publickey 파일의 내용을 복사하여 pfSense 설정에 사용

pfSense에서 인터페이스 및 로컬 엔트리 생성

설치 후 기본 작업은 WireGuard 인터페이스를 생성하고 로컬 엔트리를 추가하는 것이다. 절차는 다음과 같다.

  • Interfaces > Assignments에서 WireGuard 인터페이스 추가
  • Interfaces > WireGuard로 이동하여 Add Local 버튼 클릭
  • 로컬 키(Private Key), Listen Port(예: 51820), Address(예: 10.10.0.1/24) 입력
  • 설정 저장 후 적용

피어(Peer) 구성

원격 클라이언트 또는 다른 사이트를 피어로 등록한다. 피어 항목에는 상대방 공개키(Public Key), 허용 대역(Allowed IPs), 엔드포인트(Endpoint)가 포함된다.

  • 피어 추가 시 Allowed IPs에는 피어에게 허용할 내부 서브넷 또는 단일 IP를 지정
  • 엔드포인트는 고정 IP 또는 동적 DNS와 포트 조합(예: vpn.example.com:51820)

방화벽 규칙과 NAT 설정

WireGuard 트래픽을 허용하려면 WAN 인터페이스의 방화벽 규칙을 추가해야 한다. 기본 예시는 UDP 51820 포트를 허용하는 규칙이다.

# WAN 인터페이스에서의 방화벽 규칙 예시
Protocol: UDP
Source: any
Destination: WAN address
Destination port range: 51820
Description: Allow WireGuard UDP 51820

내부 클라이언트가 WireGuard를 통해 다른 네트워크에 접근해야 할 경우, 필요에 따라 NAT 또는 추가 방화벽 규칙을 구성한다. 사이트 간 터널로 사용할 때는 라우팅과 상호 Allowed IPs 설정이 핵심이다.

클라이언트 구성 예제

클라이언트 설정 파일 예시는 아래와 같다. 서버 Address와 Public Key, Endpoint는 실제 값으로 대체한다.

[Interface]
PrivateKey = 클라이언트_개인키
Address = 10.10.0.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = 서버_공개키
Endpoint = vpn.example.com:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

검증 및 문제 해결

기본 점검 항목

  • pfSense WireGuard 서비스 상태 확인
  • 포트가 외부에서 접근 가능한지(포트 포워딩/공인 IP 확인)
  • 방화벽 규칙이 올바른 인터페이스에 적용되었는지 확인

연결 문제 해결 팁

  • 로그 확인: Status > System Logs에서 관련 항목 점검
  • 키 쌍 불일치 여부 확인
  • Allowed IPs 설정으로 인해 라우트 충돌이 발생하지 않는지 확인

보안 고려사항

WireGuard는 키 관리가 중요하다. 개인키는 절대 노출하지 않고 주기적 키 교체 계획을 마련한다. 또한 관리 포트와 접속 권한을 최소화하고 필요 시 MFA와 같은 추가 인증 수단을 적용한다.

마무리

pfSense에 WireGuard를 적용하면 성능과 단순성 측면에서 유리하다. 설치는 패키지 기반으로 진행하고, 키 생성과 피어 설정, 방화벽 규칙 적용 순서를 지키면 안정적으로 운영할 수 있다. 필요 시 소규모 테스트 환경에서 먼저 검증한 후 운영 환경으로 확장하는 것을 권장한다.

pfSense WireGuard 설치 pfSense WireGuard 구성 pfSense VPN WireGuard WireGuard 설치 WireGuard 설정 pfSense VPN 네트워크 보안 VPN 설정