algo/docs/client-linux-wireguard.md
David Myers 47bb48b0fb
Update Linux WireGuard client doc (#1846)
Ubuntu 18.04 LTS now includes WireGuard so the PPA is no longer needed.
2020-07-22 15:46:48 -04:00

2.0 KiB

Using Ubuntu as a Client with WireGuard

Install WireGuard

To connect to your AlgoVPN using WireGuard from Ubuntu, first install WireGuard:

# Ubuntu 16.04 only: Add the WireGuard repository
sudo add-apt-repository ppa:wireguard/wireguard
sudo apt update

# Install the tools:
sudo apt install wireguard openresolv

For installation on other Linux distributions, see the Installation page on the WireGuard site.

Locate the Config File

The Algo-generated config files for WireGuard are named configs/<ip_address>/wireguard/<username>.conf on the system where you ran ./algo. One file was generated for each of the users you added to config.cfg. Each WireGuard client you connect to your AlgoVPN must use a different config file. Choose one of these files and copy it to your Linux client.

Configure WireGuard

Finally, install the config file on your client as /etc/wireguard/wg0.conf and start WireGuard:

# Install the config file to the WireGuard configuration directory on your
# Linux client:
sudo install -o root -g root -m 600 <username>.conf /etc/wireguard/wg0.conf

# Start the WireGuard VPN:
sudo systemctl start wg-quick@wg0

# Check that it started properly:
sudo systemctl status wg-quick@wg0

# Verify the connection to the AlgoVPN:
sudo wg

# See that your client is using the IP address of your AlgoVPN:
curl ipv4.icanhazip.com

# Optionally configure the connection to come up at boot time:
sudo systemctl enable wg-quick@wg0

If your Linux distribution does not use systemd you can bring up WireGuard with sudo wg-quick up wg0.

Using a DNS Search Domain

As of the v1.0.20200510 release of wireguard-tools WireGuard supports setting a DNS search domain. In your wg0.conf file a non-numeric entry on the DNS line will be used as a search domain. For example this:

DNS =  172.27.153.31, fd00::b:991f, mydomain.com

will cause your /etc/resolv.conf to contain:

search mydomain.com
nameserver 172.27.153.31
nameserver fd00::b:991f