Guide
16 min readAug 11, 2026

How to Access Sophos Remotely Over a CGNAT Network

Choose the correct path for Sophos administration, remote users, or a remote site—then verify the CGNAT layer, tunnel, route, firewall rule, DNS, and target service in order.

Quick Answer

For the web admin console, register the firewall with Sophos Central and open it from Firewall Management. For staff or site access to the LAN, place a public Vultr server in the middle and keep an outbound tunnel from a gateway behind Sophos. The public server becomes the stable meeting point while CGNAT remains unchanged.

Choose the access path

What do you need to reach through Sophos?

Start with the job, then prove where the public connection ends. This avoids publishing an admin port or rebuilding a VPN policy that CGNAT can never receive.

Compare the Sophos WAN IPv4 with the public IPv4

Read the WAN address from Network > Interfaces on Sophos. Detect the public IPv4 from the same internet connection, with other VPNs disconnected.

Run the two-address check

The right setup depends on whether Sophos owns the public address or sits behind an upstream translation layer.

Next: Enter the WAN IPv4 from Sophos and detect or enter the public IPv4 seen on the same connection.

Two remote-access jobs need two different paths

Sophos administration and private-LAN access are separate outcomes. Pick the shortest secure route for each one.

Fastest for administrators

Sophos Central management

Register the firewall, approve Central management, and open the web admin console from My Products > Firewall Management. Current Sophos documentation uses role-based access and a reverse-proxy path for supported versions.

Use it for: configuration, monitoring, diagnostics, logs, and policy work.

Security value: the local HTTPS admin service stays off the public WAN.

Open the official setup steps
Best for users and sites

Public server hub

The server supplies the fixed public endpoint. A gateway behind Sophos initiates and maintains the outbound tunnel, while remote peers connect to the same hub.

Use it for: private applications, RDP, SSH, file shares, internal DNS, or a routed remote subnet.

Business value: one controlled public meeting point replaces an ISP change and keeps the LAN behind Sophos policy.

Review the server option
Recommended public hub

Choose a server that makes the Sophos network reachable

A small public Linux VM gives the tunnel a fixed IPv4 and an always-on UDP listener. Because the Sophos-side gateway initiates outward, CGNAT no longer controls the entry path. Staff gain a stable private route, and you keep ownership of keys, subnets, and access rules. Vultr publishes a complete Ubuntu WireGuard guide for this setup.

Vultr for the public tunnel hub

Vultr is the recommended public hub because it combines broad location choice with a documented WireGuard setup path.

Vultr
New users get $300
  • Fixed public IPv4 and UDP rules give the tunnel one stable rendezvous point.
  • Official Ubuntu WireGuard documentation shortens deployment and recovery work.
  • New users can receive a $300 promotional credit through this offer.
  • Vultr reports more than 80 million cloud instances launched worldwide.

The connection path that works through CGNAT

Both private sides start outbound sessions. Only the cloud server accepts a public listener.

Remote user or site

Starts an authenticated tunnel to the server public IPv4.

Vultr hub

Owns the fixed IPv4, UDP listener, peer keys, and private routes.

Gateway behind Sophos

Keeps an outbound tunnel alive, then passes approved traffic through Sophos policy to the LAN.

Implementation plan

Set up Sophos remote access over CGNAT

Use a dedicated DMZ or transit VLAN for the on-site gateway so the tunnel-to-LAN flow crosses Sophos rules and remains easy to audit.

Step 1

Deploy the public hub

Create a small Ubuntu server with a public IPv4 near your users. Use SSH keys, update the OS, and allow the WireGuard listener (commonly UDP 51820) in the cloud firewall.

Step 2

Build the private tunnel network

Install WireGuard on the server and assign a dedicated tunnel range such as 10.77.0.0/24. Enable IPv4 forwarding and keep management access restricted.

Step 3

Add an outbound gateway behind Sophos

Place a small Linux VM or device in a Sophos DMZ or transit VLAN. Configure it as a WireGuard peer that initiates to the server, and set PersistentKeepalive to keep the CGNAT mapping active.

Step 4

Route through Sophos policy

Add the remote tunnel subnet to the required Sophos routes and create narrow rules from the tunnel gateway zone to the approved LAN resources. Keep the web admin console on Sophos Central.

Step 5

Enroll remote users or the second site

Create a separate peer and key pair for each user or gateway. Route only the private destinations they need instead of sending all internet traffic through the business LAN.

Step 6

Verify one hop at a time

Confirm both handshakes on the server, ping tunnel addresses, test a private IP, test internal DNS, and finally open the target application. Each result identifies the next layer to fix.

CGNAT-side WireGuard peer

Keep the connection active and advertise only the LAN routes this gateway owns.

[Peer]
PublicKey = <VPS_PUBLIC_KEY>
Endpoint = <VPS_PUBLIC_IP>:51820
AllowedIPs = 10.77.0.0/24
PersistentKeepalive = 25

Server route for the Sophos LAN

Bind the private LAN to the on-site peer, then enforce resource access in Sophos.

[Peer]
PublicKey = <SITE_GATEWAY_PUBLIC_KEY>
AllowedIPs = 10.77.0.2/32, 192.168.20.0/24
Connection and port verification

Find the first broken hop

A WireGuard listener is UDP, so a generic open-port result is not enough. A recent authenticated handshake is the strongest proof; packet capture shows whether traffic reaches the server before authentication.

Listener

sudo ss -lunp | grep 51820

Confirms the UDP socket is bound on the server.

Handshake

sudo wg show

Shows the latest handshake, endpoint, and transfer counters for each peer.

Packet path

sudo tcpdump -ni any udp port 51820

Proves whether packets arrive before keys and routes are evaluated.

What you seeWhat it provesNext check
No handshake from the remote userNo new packet on the server listenerCheck the server public IP, UDP 51820 rule, client network, and client key.
User connects, CGNAT site is offlineRemote peer has a handshake; site peer does notCheck the on-site gateway service, endpoint, keys, DNS, clock, and PersistentKeepalive.
Both peers connect, tunnel IP failsRecent handshakes but no tunnel pingCorrect AllowedIPs, peer addresses, forwarding, and return routes.
Tunnel works, private LAN IP failsTunnel gateway answers; a LAN resource does notCheck the Sophos static route, zone rule, gateway firewall, and target host firewall.
Private IP works, hostname failsApplication opens by IP onlyPush or route the internal DNS server and verify the search suffix.
Only one application failsOther LAN services are reachableCheck the service listener, application ACL, protocol, and host firewall port.

For more tunnel patterns and single-service alternatives, see remote access without port forwarding. For a broader method comparison, use the CGNAT bypass decision guide.

Questions people ask

Sophos remote access over CGNAT FAQ

Official references

Share this article