OpenVPN을 사용하여 pfSense에서 Proton VPN을 구성하는 방법
- 읽기
- 2분
- 카테고리
- 라우터
이 가이드에서는 OpenVPN VPN 프로토콜을 사용하여 pfSense 23.09 및 pfSense 2.7.x에서 Proton VPN을 설정하는 방법을 보여드립니다. 이를 통해 귀하의 라우터에 연결된 모든 기기를 Proton VPN 연결로 보호할 수 있습니다.
pfSense 2.7.x를 사용 중인 경우, 대신 WireGuard® 프로토콜을 사용하는 것을 권장합니다.
또한 OpenVPN을 사용할 때는 다중 연결을 권장하지 않습니다. 이 사용 사례의 경우에도 WireGuard를 권장합니다.
시작하기 전에 다음 사항이 필요합니다:
- 새로 설치한 pfSense 23.09 또는 pfSense 2.7.x
- pfSense 프론트엔드에 접근할 수 있도록 귀하의 LAN 네트워크에 연결된 컴퓨터
- 귀하의 OpenVPN 사용자 이름 및 비밀번호. 이는 일반 Proton VPN 사용자 이름 및 비밀번호와 다릅니다. 확인하려면 account.protonvpn.com에 로그인한 후 계정 → OpenVPN 사용자 이름으로 이동하세요.

1. OpenVPN 설정 파일 생성
account.protonvpn.com에서 Proton 계정 사용자 이름과 비밀번호를 사용하여 Proton VPN에 로그인한 후, 다운로드 → OpenVPN 설정 파일로 이동하여 OpenVPN 설정 파일을 다운로드하십시오. 플랫폼 선택: 라우터를 반드시 선택하십시오.
Proton VPN에서 OpenVPN 설정 파일을 다운로드하는 방법 알아보기
pfSense를 구성하려면 이 설정 파일에 있는 TLS 인증서(새 창)가 필요합니다. 이를 확인하려면 텍스트 편집기에서 다운로드한 OpenVPN 설정 파일을 열고 —–BEGIN CERTIFICATE—- 로 시작하여 –—-END CERTIFICATE—–로 끝나는 텍스트를 찾으세요.

또한 VPN 서버의 IP 주소와 포트 번호가 필요합니다. 이는 인증서에 나열된 첫 번째 remote 줄에서 확인할 수 있습니다. 첫 번째 숫자는 IP 주소이고, 두 번째 숫자는 포트 번호입니다. 아래 예시에서 IP 주소는 185.159.157.6이고 포트 번호는 51820입니다.

마지막으로 OpenVPN Static 키가 필요합니다. 이는 —–BEGIN OpenVPN Static key V1—-로 시작하여 —–END OpenVPN Static key V1—–로 끝납니다.

2. pfSense에 TLS 인증서 추가
브라우저의 URL 표시줄에 192.168.1.1을 입력하여 pfSense 웹 인터페이스를 엽니다. 로그인 후 시스템 → 인증서 → 추가 → 인증서 불러오기로 이동하세요.

다음 설정을 구성하세요:
CA 생성 / 편집. 인증 기관 → 추가로 이동하여 다음 설정을 변경하세요:
- 설명 이름: Proton의 TLS 인증서를 설명하는 데 유용한 임의의 이름을 입력할 수 있습니다
- 방법: 기존 인증 기관 불러오기
기존 인증 기관
- OpenVPN 설정 파일의 TLS 인증서를 복사하여 여기에 붙여넣으세요

완료되면 저장을 클릭하세요.
3. OpenVPN 클라이언트 구성
이제 데이터를 암호화하고 VPN 서버로 터널링하기 위해 OpenVPN 클라이언트를 추가합니다.
VPN → OpenVPN → 클라이언트로 이동하고, 추가를 클릭한 후 다음 설정을 구성하세요:
일반 정보:
- 설명: 이 설정에 표시되는 이름을 선택하세요
- 비활성화됨: 선택 해제
모드 설정
- 서버 모드: 피어 투 피어(SSL/TLS)
- 기기 모드: tun – 레이어 3 터널 모드
엔드포인트 설정
- 프로토콜: IPv4에서만 UDP 사용 또는 IPv4에서만 TCP 사용 중 하나를 선택하세요(원하는 프로토콜을 선택하되, 다운로드한 설정 파일과 일치해야 합니다). UDP와 TCP의 차이점에 대해 더 알아보기.
- 인터페이스: WAN
- 로컬 포트: –
- 서버 호스트 또는 주소: 이를 확인하려면 1단계를 참조하세요.
- 서버 포트: 이를 확인하려면 1단계를 참조하세요.
- 프록시 호스트 또는 주소: –
- 프록시 포트: –
- 프록시 인증: 없음

사용자 인증 설정
- 사용자 이름: 귀하의 Proton VPN OpenVPN 사용자 이름
- 비밀번호: 귀하의 Proton VPN OpenVPN 비밀번호
- 인증 재시도: 선택 해제 상태로 유지
주의: 이는 일반 Proton VPN 사용자 이름 및 비밀번호와 다릅니다. 추가 기능을 활성화하려면 OpenVPN 사용자 이름에 다음 접미사를 추가하세요.
- NetShield Ad-blocker: +f1
- NetShield Ad-blocker 고급(유료 플랜을 사용하는 경우에만 이용 가능하며, 멀웨어 및 트래커도 차단): +f2
예를 들어 NetShield Ad-blocker를 활성화하려면 사용자 이름+f1을 입력하세요.

암호화 설정
- TLS 키 사용: 선택
- TLS 키 자동 생성: 선택 해제
- TLS 키: OpenVPN 설정 파일에서 OpenVPN Static 키를 복사하여 여기에 붙여넣으세요(1단계 참조)
- TLS Key Usage Mode: TLS 암호화 및 인증
- TLS keydir direction: 기본 방향 사용
- Peer Certificate Authority: Proton AG(또는 2단계에서 귀하가 사용한 설명형 이름)
- Peer Certificate Revocation List: 변경하지 않고 그대로 둠
- Client Certificate: 없음(사용자 이름 및/또는 비밀번호 필요)
- Data Encryption Negotiation: 선택됨
- Data Encryption Algorithms: AES-256-GCM, CHACHA20-POLY1305
- Fallback Data Encryption Algorithm: AES-256-GCM
- Auth digest algorithm: SHA256(256비트)
- Hardware Crypto: 이 기능의 지원 여부는 귀하의 기기에 따라 다릅니다. 지원되는 경우, 먼저 System → Advanced → Miscellaneous로 이동하여 활성화해야 합니다. 확실하지 않은 경우, No hardware crypto acceleration을 선택하십시오.
- Server Certificate Key Usage Validation: 선택됨

터널 설정
- IPv4 Tunnel Network: –
- IPv6 Tunnel Network:-
- IPv4 Remote network(s): –
- IPv6 Remote network(s): –
- Limit outgoing bandwidth: -(달리 선호하는 설정이 없는 한)
- Allow Compression: 스터브가 아닌 압축은 모두 거부(가장 안전함)
- Topology: 서브넷 — 공통 서브넷 내 클라이언트당 하나의 IP 주소 할당
- Type of service: 선택하지 않은 상태로 둠
- Don’t pull routes: 선택
- Don’t add/remove routes: 선택하지 않은 상태로 둠
- Pull DNS: 선택

Ping 설정
- 모든 항목을 기본값으로 유지하십시오.

고급 설정
- 사용자 지정 옵션: 다음을 추가하십시오.
tun-mtu 1500;
mssfix 0;
reneg-sec 0;
remote-cert-tls server;
참고: 이 구성 설정은 아래 스크린샷에 표시된 설정을 대체합니다.
연결의 안정성을 높이려면 다운로드한 OpenVPN 설정 파일을 텍스트 편집기로 열고 remote로 시작하는 줄을 찾으십시오. 두 번째 remote 줄부터 시작하여, remote로 시작하는 각 줄을 pfSense의 사용자 지정 옵션 필드에 복사하고 그 뒤에 세미콜론을 붙이십시오.

- UDP Fast I/O: 선택됨
- Exit Notify: 비활성화됨
- Send/Receive Buffer: 기본값
- Gateway creation: IPv4 전용
- Verbosity level: 3(권장)

저장을 클릭한 후 Status → OpenVPN으로 이동하십시오. 새 VPN 클라이언트의 상태가 up으로 표시되는 것을 볼 수 있습니다.

4. OpenVPN 인터페이스 설정
현재 VPN 클라이언트가 실행 중이지만, 이를 통해 라우팅되는 트래픽은 없습니다. 귀하의 모든 네트워크 트래픽을 안전한 Proton VPN 터널을 통해 라우팅하려면 인터페이스와 방화벽 규칙을 설정해야 합니다.
Interfaces → Interface Assignments → Available network ports로 이동한 다음, 드롭다운 메뉴에서 방금 추가한 VPN 클라이언트를 선택하고 → Add를 클릭하십시오.
이렇게 하면 OPTx라는 이름의 인터페이스가 생성됩니다(여기서 x는 라우터의 물리적 인터페이스 수에 따라 다름). 새로 생성된 인터페이스를 클릭하여 구성하십시오.

Interfaces 탭으로 이동하여 OPTx를 클릭한 후, 다음 구성 설정을 입력하십시오.
일반 설정:
- Enable: 선택됨
- Description: 인터페이스를 설명할 수 있는 이름을 선택하십시오
예약된 네트워크:
- Block bogon networks: 선택
나머지 필드는 변경하지 않고 그대로 둡니다.
저장 및 변경 사항 적용을 클릭하십시오.

5. 방화벽 규칙 구성
방금 설정한 Proton VPN 인터페이스를 통해 모든 트래픽을 라우팅하기 위해 방화벽 규칙을 사용합니다. Firewall → NAT → Outbound로 이동하여 Manual Outbound NAT rule generation을 선택하십시오. 그런 다음 저장 및 변경 사항 적용을 클릭하십시오.

Mappings 아래에 여섯 개의 규칙이 나열되어 있습니다. Source 열에서 이 규칙 중 4개는 127.0.0.0/8 및 ::1/128 주소를 보여줍니다. 이 규칙들은 무시하고, 나머지 두 규칙을 편집하십시오(Actions 열에 있는 연필 아이콘 클릭).

두 규칙 모두에서 Interface를 4단계에서 생성한 Proton VPN 인터페이스로 변경하십시오. 저장 및 변경 사항 적용을 클릭하십시오.

참고: 이 단계를 거치면 인터페이스와 동일한 이름의 게이트웨이가 자동으로 생성됩니다.

이제 Mappings 설정이 다음과 같이 표시되어야 합니다:

Firewall → Rules → LAN으로 이동합니다. Default allow LAN IPv6 to any rule 옆의 ✓ 아이콘을 클릭하여 비활성화합니다.

Default allow LAN to any rule → Edit (연필 아이콘)으로 이동합니다.

Display advanced → Gateway를 클릭하고 5단계에서 생성한 게이트웨이를 선택합니다. Save 및 Apply Changes를 클릭합니다.

이제 Status → OpenVPN으로 이동하여 Service → Restart 아이콘을 클릭해 새로운 설정으로 OpenVPN 클라이언트를 재시작합니다.

DNS 설정 구성
이제 pfSense 방화벽을 통과하는 모든 인터넷 트래픽이 Proton VPN 서버를 통해 라우팅됩니다. 하지만 DNS 요청은 그렇지 않습니다. 이를 해결하려면 pfSense에서 DNS 설정을 변경해야 합니다.
System → General Setup → DNS Servers → DNS servers로 이동하여 다음 설정을 입력합니다:
- DNS Servers → Address: 10.2.0.1
- DNS servers → Gateway: 4단계에서 생성한 VPN 인터페이스를 선택합니다
- DNS Server Override: 체크
- DNS Resolution Behavior: Use remote DNS Servers, ignore local DNS

이제 Services → DNS Resolver → Outgoing Network Interfaces로 이동하여 다음 설정을 입력합니다:
- Outgoing Network Interfaces: 4단계에서 생성한 VPN 인터페이스를 선택합니다
- DNS Query Forwarding: 체크
귀하께서 OpenVPN 사용자 이름에 +f1 또는 +f2 접미사를 추가하여 NetShield 광고 차단기 기능을 활성화한 경우(3단계 참조), DNSSEC 지원을 비활성화 해야 합니다.

Save 및 Apply changes를 클릭합니다.
이제 설정이 완료되었습니다. 귀하의 네트워크에서 발생하는 모든 트래픽은 이제 귀하가 선택한 Proton VPN 서버를 통해 안전하게 라우팅됩니다. 네트워크에 연결된 모든 기기에서 Proton의 무료 보안 IP 스캐너를 방문하여 이를 테스트하실 수 있습니다.
선택적 미세 조정
귀하의 네트워크에 있는 일부 컴퓨터를 VPN 인터페이스 사용에서 제외할 수 있습니다. 예를 들어, 게임 콘솔이 VPN에 연결되지 않고 인터넷에 접속하는 것을 선호하실 수 있습니다. 이를 수행하려면 다음과 같이 하십시오:
1. Firewall → Rules → LAN → Add로 이동합니다.

2. 다음과 같이 설정을 구성합니다:
- Action: Pass
- 비활성화됨: 선택 해제
- Interface: LAN
- Address Family: IPv4
- Protocol: Any
- Source: Single Host or Alias를 선택하고 제외하려는 기기의 IP를 추가합니다
- Destination: Any
- Log: 변경 없음
- Description: 설명 추가

3. Display Advanced를 클릭하고 Gateway를 WAN으로 변경합니다.

4. Save 및 Apply Changes를 클릭합니다.

5. Firewall → NAT → Outbound로 이동하여 Mode를 Automatic으로 전환한 다음, Save 및 Apply Change를 클릭합니다. 그런 다음 Mode를 다시 Manual로 전환하고 Save 및 Apply Change를 클릭합니다.

이렇게 하면 선택한 기기가 로컬 WAN 네트워크에 접근할 수 있도록 허용하는 두 개의 새로운 규칙이 생성됩니다.

이제 해당 기기는 VPN 인터페이스에서 제외되며, 귀하의 ISP가 할당한 IP 주소를 사용하여 인터넷에 접속합니다. 하지만 DNS 서버는 Proton VPN의 DNS 서버를 사용하게 됩니다.