This post will go over setting up a WireGuard VPN server using OpenWRT. Part 2 will focus on setting up Pi-Hole. You could also use a $5/month VPS service, but I already had all the hardware needed to do it at home. Skip to instructions.
What you will need:
- An OpenWRT router with LuCi and enough space to install the WireGuard software and DDNS software.
- A domain name. I am using namecheap.com which includes a Dynamic DNS service. It can be ANY domain name, even the $.99 per year type.
- Raspberry Pi with PiHole installed (Optional)
What this will do:
- Add security when using public wifi or cellular data. Since all data is encrypted and sent through your home internet connection, traffic cannot be sniffed or intercepted.
- Keep your browsing history private - meaning the wifi owner or cellular carrier will not be able to see your internet activity.
- Bypass content filters put in place by wifi hotspot operators or cellular carriers.
- Remove ads without installing a plugin or app. (Optional)
What this will NOT do:
- Anonymize your traffic through your ISP. If you are trying to pirate content or do something else undesirable, this is NOT the walkthrough you are looking for. In fact, this will do the opposite of what you are looking for, since your ISP will have even MORE usage metrics from your account. I mention this because when you do a "VPN" search on google, most results are for shady VPN companies.
- This will not save battery life! It will drain your battery faster than normal when the VPN is active.
- Increase speed. Your download speed will be limited to the upload speed of your home internet, which is typically somewhat slow.
Parts used in this post:
- TP-Link Archer C7 v2
- OpenWRT 18.06
- Namecheap DNS register and DDNS https://www.namecheap.com
- Raspberry Pi 3
- Pi-hole https://pi-hole.net
Here are some of the sources I used when configuring: