/wireguard

Simplifying routine operations with wireguard

Primary LanguageShellMIT LicenseMIT

Wireguard

Simplifying routine operations with WireGuard

wg-ubuntu-server-up.sh

This script:

  • Installs all necessary software on an empty Ubuntu DigitalOcean droplet (it should also work with most modern Ubuntu images)
  • Configures IPv4 forwarding and iptables rules
  • Sets up unbound dns resolver
  • Creates a server and clients configurations
  • Installs qrencode
  • Runs WireGuard

Usage

wg-ubuntu-server-up.sh [<number_of_clients>]

Example of usage

./wg-ubuntu-server-up.sh
./wg-ubuntu-server-up.sh 10

wg-genconf.sh

This script generate server and clients configs for WireGuard.

If the public IP is not defined, then the public IP of the machine from which the script is run is used. If the number of clients is not defined, then used 10 clients.

This repo contains a change in wg-genconf.sh file which decides the public interface dynamically. If you don't need it, editing is simple too.

Prerequisites

Install WireGuard if it's not installed.

Usage

./wg-genconf.sh [<number_of_clients> [<server_public_ip>]]

Example of usage:

./wg-genconf.sh
./wg-genconf.sh 10
./wg-genconf.sh 10 157.245.73.253