This script will let you setup your own VPN server in no more than a minute, even if you haven't used WireGuard before. It has been designed to be as unobtrusive and universal as possible.
Run the script and follow the assistant:
wget https://raw.githubusercontent.com/l-n-s/wireguard-install/master/wireguard-install.sh -O wireguard-install.sh bash wireguard-install.sh
Once it ends, you can run it again to add more users. Reboot your server to apply all settings.
The script can be configured by setting the following environment variables:
- INTERACTIVE - if set to "no", the script will not prompt for user input
- PRIVATE_SUBNET - private subnet configuration, "10.9.0.0/24" by default
- SERVER_HOST - public IP address, detected by default
- SERVER_PORT - listening port, picked random by default
- CLIENT_DNS - comma separated DNS servers to use by the client
Setting up clients
Install WireGuard and reboot your computer:
sudo add-apt-repository ppa:wireguard/wireguard -y && sudo apt update && sudo apt install wireguard resolvconf -y sudo reboot
Copy the file
/root/client-wg0.conf from a remote server to your local PC path
/etc/wireguard/wg0.conf and run
sudo systemctl start firstname.lastname@example.org
To show VPN status, run
sudo wg show.
Inspired by Nyr's openvpn-install.