A few weeks ago, I posted a link to some instructions for setting up a personal VPN server in the Google Cloud and using it to provide your home clients with free VPN services.
Well, the original article linked is no longer available as the guy that posted it had violated the original authors copyright.
However, the original authors instructions are available on GitHub:
Run your own privacy-first ad blocking service at home, or in the cloud for free with Google Cloud Services. - rajannpatel/Pi-Hole-on-Google-Compute-Engine-Free-Tier-with-Full-Tunnel-and-Split-Tunn...
github.com
I decided to try it out and it does indeed work fairly well. His setup creates an installation of the latest Pi-hole for ad-blocking and the Wireguard VPN. I can install the Wireguard client on my Android phone and once configured, all my traffic goes via the Wireguard VPN running on the Google Cloud VM and the Pi-hole installation blocks ads and gives a dashboard page of what stuff is being blocked.
It's not especially fast (see below) but it is working flawlessly & no web-page-hangs caused by Three mobile broadband.
1. To sign up for Google Cloud you will need a Google account (obviously) and a Credit Card (or other suitable payment method). Providing the VM that you create is as per the instructions (1 CPU, low mem & crucially one of the designated USA locations) then Google will not charge you (it remains free).
2. There are only 3 designated locations allowed for your free VM: east, middle & west USA. This, of course, is going to be a bit rubbish for a VPN being used from the UK, but after setting it up I was surprised by its performance for general internet (can't say whether it's any good for streaming)
3. Once the VM is setup (as per instructions), you have to connect to it using SSH. You can use PuTTY on a Windows machine but you have to mess around with Public/Private keys to enable the connection (Google it, it's not too difficult).
4. Once SSH'd into your Google Cloud VM running in the USA, it's a simple matter of running the script as per the instructions. It installs Wireguard & Pi-hole in the VM.
5. You then have to install the Wireguard client from the Google Playstore on your phone and you can use it to scan the QR code generated by the script run on the VM in the Google Cloud. That then creates the connection details on your phone (you have to tweak it slightly to allow ALL IP addresses to connect).
6. You can then browse to your new Pi-hole dashboard (running in USA) and view the details of the ad URLs that are being blocked on your Android client and the Comms are using the Wireguard protocol (no dashboard for that - you just have to test it with various websites like DNS leak & Wireshark).
It's not childs-play, but nor is it rocket-science. It's not greased-lightning, but nor is it glacial.
It gives you a free Wireguard VPN with built in ad-blocking dashboard. Just a shame that the UK isn't included in Google's free VM server locations.