Inhaltsverzeichnis

WireGuard

Debian 10 Setup

Backports hinzufügen:

echo "deb http://deb.debian.org/debian buster-backports main" >> /etc/apt/sources.list

Installieren:

apt update
apt install wireguard

IP-Forwardgin ativieren:

echo 1 > /proc/sys/net/ipv4/ip_forward

Dauerhaft in der /etc/sysctl.conf den Key „net.ipv4.ip_forward“ auf 1 setzen.

Basiskonfiguration erzeugen, Port und Netz ggf. anpassen:

cd /etc/wireguard

wg genkey | tee privatekey | wg pubkey > publickey

cat << EOF > wg0.conf
[Interface]
Address = 10.1.1.1/24
ListenPort = 1500
PrivateKey = $(cat privatekey)
EOF

Service aktivieren:

systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0

An der Firewall den UDP-Port (1500) zum Wireguard-Server weiterleiten.

Script zum genieren von Benutzer Configs auf dem Server

Konfigurationsdatei anlegen

/etc/wireguard/wggen.conf

wggen.conf

cat << EOF > /etc/wireguard/wggen.conf
WGNET="10.1.1."               # Wirguard Transfernetz
CLIENTNET = "192.168.1.0/24"  # zu routenedes Netze
SERVER="my.wireguar.com"      # externer Name oder IP
 
SERVERKEY=$(cat /etc/wireguard/publickey)
EOF

Script

/usr/local/bin/wggen

wggen

#!/bin/bash
 
P=/etc/wireguard
 
source $P/wggen.conf
 
C=$P/clients
CC=$C/$1.conf
PU=$C/$1-public.key
PR=$C/$1-private.key
WC=$P/wg0.conf
 
test -d $C || mkdir -p $C
test -f $P/next || echo "2" > $P/next
 
IP=$(cat $P/next)
let "NEXT = $IP + 1"
 
echo $IP
 
wg genkey | tee $PR | wg pubkey > $PU
 
echo $CC
 
echo "[Interface]" >> $CC
echo "PrivateKey = $(cat $PR)" >> $CC
echo "Address = $WGNET$IP/24" >> $CC
echo >> $CC
echo "[Peer]" >> $CC
echo "PublicKey = $SERVERKEY" >> $CC
echo "AllowedIPs = $CLIENTNET" >> $CC
echo "Endpoint = $SERVER:1500" >> $CC
 
echo $WC
 
echo >> $WC
echo "#  $1" >> $WC
echo "[Peer]" >> $WC
echo "PublicKey = $(cat $PU)" >> $WC
echo "AllowedIPs = $WGNET$IP/32" >> $WC
 
echo $NEXT > $P/next
 
systemctl restart wg-quick@wg0

chmod +x /usr/local/bin/wggen

Client anlegen

wggen clienname

Die Client-Config findet sich dann unter: /etc/wireguard/clients/clienname.conf und kann unter Windows direkt importiert werden.

Windows Admin GUI für normale Benutzer

Um das WireGuard GUI für nicht Administratoren zugänglich zu machen muss der jeweilige Benutzer in der lokalen Grupp „Netwerkkonfigurations-Operatoren“ sein und der folgende Registry-Key muss gesetzt werden:

wireguard.reg

Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\WireGuard]
"LimitedOperatorUI"=dword:00000001