WireGuard VPN installer for Linux servers
Find a file
ElXreno 34c0b6a846
Revert "Fix client subnet mask"
This commit accidentally breaks IPv6 when several clients are connected at the
same time, and it is more correct to use /24 and /64 subnets as it is used in
WireGuard examples (for example, Basic Usage [1]).

[1]: https://www.wireguard.com/papers/wireguard.pdf.

This reverts commit 0d65a00844.

Signed-off-by: ElXreno <elxreno@gmail.com>
2020-11-16 23:59:11 +03:00
.github Bump ludeeus/action-shellcheck from 0.5.0 to 1.0.0 (#152) 2020-10-27 15:50:47 +01:00
LICENSE Initial commit 2019-05-05 12:42:53 +02:00
README.md readme: update badge 2020-10-19 12:06:13 +02:00
wireguard-install.sh Revert "Fix client subnet mask" 2020-11-16 23:59:11 +03:00

WireGuard installer

Lint visitors

This project is a bash script that aims to setup a WireGuard VPN on a Linux server, as easily as possible!

WireGuard is a point-to-point VPN that can be used in different ways. Here, we mean a VPN as in: the client will forward all its traffic trough an encrypted tunnel to the server. The server will apply NAT to the client's traffic so it will appear as if the client is browsing the web with the server's IP.

The script supports both IPv4 and IPv6. Please check the issues for ongoing development, bugs and planned features!

WireGuard does not fit your environment? Check out openvpn-install.

Requirements

Supported distributions:

  • Ubuntu >= 16.04
  • Debian 10
  • Fedora
  • CentOS
  • Arch Linux

Usage

Download and execute the script. Answer the questions asked by the script and it will take care of the rest.

curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
./wireguard-install.sh

It will install WireGuard (kernel module and tools) on the server, configure it, create a systemd service and a client configuration file.

Run the script again to add or remove clients!

Providers

I recommend these cheap cloud providers for your VPN server:

  • Vultr: Worldwide locations, IPv6 support, starting at $3.50/month
  • Hetzner: Germany and Finland, IPv6, 20 TB of traffic, starting at €3/month
  • Digital Ocean: Worldwide locations, IPv6 support, starting at $5/month
  • PulseHeberg: France, unlimited bandwidth, starting at €3/month