I have been keeping tabs of this new open source VPN protocol,Wireguard. It has been in constant development for quite sometime already, but I never really jumped into using it until it was added to the latestUbuntu Linuxdistribution, version 20.04 LTS. This means that Wireguard is now going mainstream.
Wireguard, as described on its website, is extremely simple yet fast and modern VPN that utilizes state-of-the- art cryptography. It aims to be faster,simpler, leaner, and more useful than IPsec, while avoiding the massive headache. It intends to be considerably more than OpenVPN.
What makes Wireguard extremely attractive for me is the fact that it is built to be resilient with roaming clients, i.e., when clients changes IP addresses, such as when you are on your mobile phone or tablet and on mobile data.
Currently, I have a Windscribe VPN account that I use regularly using IKEv2, which is faster compared to OpenVPN, at least for me. However, when I connect to my home network, I use OpenVPN since it is the only VPN supported by my current router (even theFirewallathat I have uses OpenVPN, though I wish that it’d move to Wireguard soon).
PiVPN
With Wireguard going mainstream, I figured that I can now install it on my Raspberry Pi, alongsidePi-hole. Setting up Wireguard is pretty easy — it is just a matter of doing some command-line kung-fu on your Raspberry Pi. Running “curl -Lhttps://install.pivpn.io| bash” will download and guide you step-by-step in configuring your VPN. You will be presented with two options — OpenVPN and Wireguard.
Once you have the Wireguard server ready, just configure your client with the “pivpn -a” command, and then do “pivpn -qr” to display the QR code, which you can scan on your device to transfer the configuration. Pretty simple.
Wireguard on the cloud
In addition to Windscribe, I figured that having my own Wireguard server can complement my VPN connections. One of my favorite VPS providers, Linode, has a one-click install for Wireguard, but I figured that I’d try a new VPS provider, Vultr.com.
Spinning up a new server with Ubuntu Linux 20.04 LTS and configuring Wireguard on it is not that complicated. You can readthis Linode documentto help you.
In addition to doing exactly the same as the Raspberry Pi Wireguard server, I configured clients connecting to this server to useNextDNS.io. This is like your own Pi-Hole on the cloud — that way, I can block *any* URL that I want.
Wireguard on iOS/iPadOS
There is an official Wireguard iOS/iPadOS application on the iOS App Store (there is one on the Play Store as well). Configuring it to connect to my two Wireguard servers is as simple as scanning their respective client QR codes.
So there you have it, setting up your own Wireguard VPN is not that complicated. You can never have enough VPN connections at your disposal. What are you waiting for? Deploy your own now.
And oh, just in case you want to try Vultr.com, use my referral code,https://www.vultr.com/? ref=8551651-6G, so we can both get free credits whilst you setup and deploy your own server.