Direkt zum Hauptinhalt

Installation des Servers unter Debian

Teil 1. Installation im Terminal


Abbhängikeiten installieren.

apt update && apt install -y wireguard curl tar

Falls die ufw Firewall aktiv ist, bei dieser folgenden UDP Port öffnen 51820, wenn nicht überspringen

ufw allow 51820/udp

Nun in der Systemctl Portforwarding aktivieren

echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding=1" >> /etc/sysctl.conf
sysctl -p

Nun das Startscript für den Wireguard WEBGUI erstellen.
In dem Systemstart wird das Programm so eingestellt das es die Datenbank zum Wireguard Server in
/etc/wireguard/db/ ableget

cat <<EOF > /etc/wireguard/start-wgui.sh
#!/bin/bash
 
cd /etc/wireguard
./wireguard-ui -bind-address 0.0.0.0:5000
EOF

ACHTUNG: Die -bind-address 0.0.0.0:5000 sollte aus Sicherheitsgründen, sobald der erste Tunnel steht, gegen die WireGuard Server IP-Adresse 10.252.1.0 ausgetauscht werden!

Nun das Script ausführbar machen.

chmod +x /etc/wireguard/start-wgui.sh

Nun die Systemdienste anlegen

cat <<EOF > /etc/systemd/system/wgui-web.service
[Unit]
Description=WireGuard UI
 
[Service]
Type=simple
ExecStart=/etc/wireguard/start-wgui.sh
 
[Install]
WantedBy=multi-user.target
EOF

Nun das Install / Update  script erstellen, damit können wir immer die aktuellste Version downloaden.

cat <<EOF > /etc/wireguard/update.sh
#!/bin/bash
 
VER=\$(curl -sI https://github.com/ngoduykhanh/wireguard-ui/releases/latest | grep "location:" | cut -d "/" -f8 | tr -d '\r')
 
echo "downloading wireguard-ui \$VER"
curl -sL "https://github.com/ngoduykhanh/wireguard-ui/releases/download/\$VER/wireguard-ui-\$VER-linux-amd64.tar.gz" -o wireguard-ui-\$VER-linux-amd64.tar.gz
 
echo -n "extracting "; tar xvf wireguard-ui-\$VER-linux-amd64.tar.gz
 
echo "restarting wgui-web.service"
systemctl restart wgui-web.service
EOF

Das Script ausführbar machen und starten

chmod +x /etc/wireguard/update.sh
cd /etc/wireguard; ./update.sh

Wireguard conf von Systemd überwachen lassen und bei Änderung wiregaurd neustarten

cat <<EOF > /etc/systemd/system/wgui.service
[Unit]
Description=Restart WireGuard
After=network.target
 
[Service]
Type=oneshot
ExecStart=/bin/systemctl restart wg-quick@wg0.service
 
[Install]
RequiredBy=wgui.path
EOF
 
 
 
cat <<EOF > /etc/systemd/system/wgui.path
[Unit]
Description=Watch /etc/wireguard/wg0.conf for changes
 
[Path]
PathModified=/etc/wireguard/wg0.conf
 
[Install]
WantedBy=multi-user.target
EOF

Nun Dienste aktivieren und starten

touch /etc/wireguard/wg0.conf
systemctl enable wgui.{path,service} wg-quick@wg0.service wgui-web.service
systemctl start wgui.{path,service}

Nun können wir auf den Wireguard Server über die Weboberfläche zugreifen.

http://ipadresse:5000

Standard Anmeldedaten :
Benutzername : admin
Kennwort : admin

Diese ändern wir ab in der Datei /etc/wireguard/db/server/users.json

nano /etc/wireguard/db/server/users.json

Inhalt, einfach neues Passwort setzten

{
        "username": "admin",
        "password": "<neues passwort>"
}

Teil 2. Weiter in der Webgui

Nach dem einloggen