How to Import and Export a WireGuard VPN Using Network Manager (Manjaro, Ubuntu, etc.)
TL;DR
- Install
network-manager-wireguard
. - Import/export configs easily via GUI or
nmcli
. - Transfer VPN profiles between machines in seconds.
- Works on Manjaro, Ubuntu, Fedora, and others.
Introduction
WireGuard is a fast, secure VPN that's incredibly simple to use. While most guides focus on importing configs, what if you want to export a VPN configuration from one machine and import it to another? 🛫 ➔ 🛬
In this tutorial, you'll learn:
- How to import a WireGuard VPN config using Network Manager.
- How to export your VPN config using
nmcli
. - How to transfer configs between machines smoothly.
Prerequisites
- Linux system (tested on Manjaro, Ubuntu, Fedora)
- WireGuard VPN profile (or an existing connection to export)
vim
editor for tweaks (optional but useful)- SSH/USB for file transfer between machines
Step 1️⃣: Install Network Manager WireGuard Plugin
Manjaro / Arch:
sudo pacman -Syu networkmanager wireguard-tools networkmanager-wireguard
Ubuntu / Debian:
sudo apt update
sudo apt install network-manager wireguard wireguard-tools network-manager-wireguard-gnome
Fedora:
sudo dnf install NetworkManager-wireguard wireguard-tools
✅ Check it's working:
nmcli connection show --active | grep wireguard
Step 2️⃣: Import WireGuard Config (GUI & CLI)
(Same as before—see earlier sections for full instructions on GUI and nmcli
import.)
Example CLI:
nmcli connection import type wireguard file ~/vpn-configs/myvpn.conf
🆕 Step 3️⃣: Export WireGuard VPN Config Using nmcli
1️⃣ List your connections:
nmcli connection show
Locate your VPN connection name (e.g., myvpn
).
2️⃣ Export the VPN config to a file:
nmcli connection export myvpn > ~/vpn-configs/myvpn-exported.conf
✅ Example:
nmcli connection export myvpn > ~/vpn-configs/myvpn-exported.conf
3️⃣ Transfer the file to another machine:
- Use SCP:
scp ~/vpn-configs/myvpn-exported.conf user@remote-host:~/vpn-configs/
- Or use a USB drive / cloud sync.
Step 4️⃣: Import on Another Machine
On your second machine:
1️⃣ Install the required Network Manager plugins (Step 1).
2️⃣ Import the exported config:
nmcli connection import type wireguard file ~/vpn-configs/myvpn-exported.conf
3️⃣ Connect:
nmcli connection up myvpn
✅ Done! Your VPN is now fully transferred and operational on the new system.
Bonus: Edit Config via vim
After importing, you can tweak your settings:
vim /etc/NetworkManager/system-connections/myvpn.nmconnection
Reload:
nmcli connection reload
Troubleshooting
(Same as before—plus one extra)
- Issue: Error "export not supported for this connection type"
Fix: Make sure your VPN was originally imported or created via Network Manager. Manually added configs outside NM might need to be copied directly from/etc/NetworkManager/system-connections/
.
Conclusion
With these steps, you can import and export WireGuard VPN configurations seamlessly using Network Manager—whether you're setting up a new laptop, migrating between machines, or backing up your VPN settings.
No more re-typing keys or recreating configs from scratch—nmcli
makes it simple.