Compare offers and check the full cost before you choose.
Manual WireGuard suits you if you'd rather manage a small VPN profile than install the provider's app. With PureVPN there is one detail we'd put at the top of the page: prepare the machine before generating that profile.
PureVPN says to activate a newly downloaded configuration within 30 minutes, otherwise you'll need a fresh one. This is an initial activation instruction, not a claim that every connected session ends after half an hour. Its Linux WireGuard guide documents the requirement and names Ubuntu and Fedora.
This walkthrough uses wg-quick for manual control. You need an active PureVPN subscription, administrator access, and a maintained Ubuntu or Fedora release. Work at the machine locally: changing routes over your only SSH connection can cut off your access.
Prepare the tools and DNS integration
On Ubuntu, run:
sudo apt update
sudo apt install wireguard
On Fedora, use:
sudo dnf install wireguard-tools
These package choices follow WireGuard's installation instructions. Run only the block for your distribution, then check that the tools are available:
wg --version
command -v wg-quick
command -v resolvconf
The last check concerns DNS: wg-quick uses resolvconf when a profile has a DNS entry. If it isn't present, arrange resolver integration for your distribution or use the NetworkManager alternative below. See the wg-quick manual. Don't simply remove the DNS entry to make an error disappear.
Obtain your own profile
In the PureVPN Member Area, open Manual Configuration, choose the country or city, and use the download action. Select your device when prompted and copy the generated WireGuard configuration. The provider walkthrough shows the account screens.
Save it as plain text named purevpn.conf in your Downloads folder. Use the complete configuration from your account, including its keys and endpoint. We deliberately don't provide a sample private key to paste over it.
Keep the file private and out of shared folders. If you copied its contents through the clipboard, clear that clipboard entry after saving, including any clipboard history you use.
Put the file in place
The name purevpn below is a local interface name chosen for this guide. Before copying, check for an existing configuration:
sudo test -e /etc/wireguard/purevpn.conf && echo 'Configuration already exists'
If it exists, stop and choose another name throughout the instructions. For a new configuration:
chmod 600 "$HOME/Downloads/purevpn.conf"
sudo install -d -m 700 /etc/wireguard
sudo install -m 600 "$HOME/Downloads/purevpn.conf" /etc/wireguard/purevpn.conf
The copy in /etc/wireguard belongs to root and is readable only by its owner. Keep any remaining downloaded copy equally protected.
Connect, inspect, then disconnect
Disconnect other VPN clients first. Within the provider's initial activation window, bring up the interface:
sudo wg-quick up purevpn
Open a website to generate traffic, then inspect the tunnel:
sudo wg show purevpn
Look for a recent handshake and traffic counters. They help establish that the peer is exchanging traffic; they don't prove that every application uses the tunnel. WireGuard's quick start explains its status tools.
To disconnect:
sudo wg-quick down purevpn
The up and down operations create and remove the interface and associated configuration. wg-quick derives routes from the profile's AllowedIPs; see its manual for the details. This guide leaves boot-time startup unconfigured.
Desktop alternative: let NetworkManager manage the profile
If your desktop already uses NetworkManager, it can import WireGuard profiles and manage DNS through its own integration. Use this instead of the wg-quick connection above; bring that connection down first if it is running.
Import your fresh profile:
nmcli connection import type wireguard file "$HOME/Downloads/purevpn.conf"
nmcli connection show
Note the imported name. Importing may activate it automatically. For a profile named purevpn, disable future automatic activation and connect explicitly:
nmcli connection modify purevpn connection.autoconnect no
nmcli connection up purevpn
Use the actual imported name if different. To disconnect this version of the setup:
nmcli connection down purevpn
This route still needs the checks below. See NetworkManager's WireGuard explanation and command reference.
Check what leaves your machine
Compare your public IP before and after connecting, and test DNS and IPv6 separately. A profile that routes IPv4 doesn't by itself establish what happens to IPv6. Repeat the checks after switching networks or waking the machine.
A manual tunnel doesn't automatically include PureVPN's app kill switch. If you require traffic to stop whenever the VPN is unavailable, you need a separately designed and tested firewall policy. We'd establish normal connection behavior before adding that complexity.
If you get no handshake, check the activation window first and obtain a fresh profile if you missed it. Also check that the endpoint was copied completely. If you get a DNS or resolvconf error, return to resolver integration rather than changing keys. If handshakes work but browsing doesn't, investigate DNS and routes as separate possibilities.
Record the exact error before changing anything. Avoid posting the configuration itself in a support forum: it contains credentials for the tunnel.
For a daily desktop connection with location selection in an app, read the Ubuntu GUI guide. For the buying decision behind either setup, see PureVPN versus NordVPN.
Compare offers and check the full cost before you choose.