Test the UX of common VPN services
I tested TunnelBear and Mullvad. I researched NordVPN without testing it.
My journey through the world of VPN was interesting. Sorry if I'm
stating the obvious
It was interesting to see the different configuration options and UX depending on the service.
System VPN
They all provided a system app to configure and turn on the VPN as the recommended option for users. The app handles logging in, configuring, and turning the VPN on and off. That's where users can choose the location of the exit server. I guess that they all do this because:
-
It's easier to set up consistently in different contexts (eg. Windows and macOS) compared to installing and configuring OpenVPN or WireGuard manually.
-
It's allows the provider to update the configuration based on their network health. In comparison, a manual OpenVPN configuration hardcodes a given server.
Under the hood, they can all use different protocols, at least WireGuard and OpenVPN.
Browser extensions
Some of them provide a browser extension for Firefox or Chrome but these vary widely in what they do:
-
The Tunnelbear extension works on its own.
-
The Mullvad extension relies on the system Mullvad VPN to work.
-
The NordVPN extension also seems to work on its own: https://support.nordvpn.com/Connectivity/Extension/1092233642/How-to-connect-to-NordVPN-with-Firefox-extension.htm
Manual configuration
Some of them provide configuration files for OpenVPN and WireGuard that users can download to configure the VPN feature of their operating system:
- NordVPN
- OpenVPN: They provide
.ovpn
files for each of their server publicly on their website: https://nordvpn.com/ovpn/ - WireGuard: They do not provide configuration files for some reason that's over my head, but some people hacked their way around it.
- OpenVPN: They provide
- Mullvad
- OpenVPN: They provide
.ovpn
files for each of their server from the account settings after log in. - WireGuard: They provide
.conf
files for each of their server from the account settings after log in.
- OpenVPN: They provide
- Tunnelbear does not provide manual configuration files: https://help.tunnelbear.com/hc/en-us/articles/360061194991-Does-TunnelBear-provide-manual-configuration-for-the-VPN-connection-
Configuration in Debian
OpenVPN
I could import several .ovpn
files from Settings → Network → VPN → + → Import from file...
GNOME remembers different VPN and make it possible to switch exit country from the system menu.
WireGuard
I couldn't import a .conf
files from the GNOME Settings.
But I could do so on the command line without installing additional packages:
nmcli connection import type wireguard file /home/amnesia/Persistent/vpn/br-sao-wg-202.conf
This WireGuard VPN is then display in the System menu, but not in the network settings, so it seems to confirm the lack of support for WireGuard in the GNOME Settings before GNOME 44 (https://gitlab.gnome.org/GNOME/gnome-control-center/-/merge_requests/1364).
Configuration in Firefox
- I couldn't find generic OpenVPN or WireGuard extension to configure a VPN in Firefox.