🔒
← All setup guides

pfSense WireGuard Setup Guide

pfSense is FreeBSD-based. WireGuard is available via the package manager. Like OPNsense, NAT is configured through the firewall UI — not via PostUp scripts.

1

Install the WireGuard package

Go to System → Package Manager → Available Packages. Search for and install pfSense-pkg-WireGuard.

2

Create a tunnel in ProxyLink

Go to Devices → + Add → Router / LAN site, select Home / LAN Router, enter your LAN subnet, and note all values from the downloaded config.

3

Create the WireGuard tunnel

Go to VPN → WireGuard → Tunnels → Add Tunnel.

  • Description: ProxyLink
  • Private Key: from your config
  • Listen Port: leave default
4

Add the ProxyLink server as a peer

Under the tunnel, go to the Peers tab → Add Peer:

  • Public Key: server public key
  • Endpoint: server IP + port
  • Allowed IPs: 10.100.0.0/16
  • Keepalive: 25
5

Assign the interface

Go to Interfaces → Assignments. Assign tun_wg0 as a new interface. Enable it and name it PROXYLINK. Set the IP to your VPN IP with /24.

6

Configure outbound NAT

Go to Firewall → NAT → Outbound. Switch to Manual mode.

Add a rule: Interface = PROXYLINK, Source = your LAN subnet, Translation = Interface address.

Good to know

pfSense is FreeBSD — PostUp lines are irrelevant. All NAT must be configured via the pfSense firewall UI.
Without assigning tun_wg0 as an interface, you cannot apply firewall rules or NAT to WireGuard traffic.

What you get once the tunnel is up

Ready to connect?

Create a free account and set up your first tunnel in minutes. Free during early access — no card required.

Setup guides for other platforms