Wenn Sie sich mit dem WiFi eines Cafés verbinden oder über ein öffentliches Netzwerk auf das Internet zugreifen, werden Ihre Daten über eine Infrastruktur übertragen, die Sie nicht kontrollieren können. Jeder, der sich zwischen Ihnen und den von Ihnen besuchten Websites befindet, könnte Ihren Datenverkehr abfangen, und selbst in Ihrem Heimnetzwerk kann Ihr Internetanbieter jede Website sehen, die Sie besuchen.
Ein VPN löst dieses Problem, indem es einen verschlüsselten Tunnel zwischen Ihrem Gerät und einem Server Ihres Vertrauens herstellt. Anstatt dass Ihr Datenverkehr direkt ins Internet geht, reist er zunächst durch diesen sicheren Tunnel zu Ihrem VPN-Server, der ihn dann an sein Ziel weiterleitet, so dass jeder, der das Netzwerk beobachtet, nur verschlüsselte Daten sieht, die zu Ihrem VPN-Server gehen, mehr nicht.
WireGuard ist ein modernes VPN Protokoll, das diese Aufgabe bemerkenswert gut erfüllt. Im Gegensatz zu älteren VPN-Technologien, die Hunderttausende von Codezeilen erfordern, WireGuard erfüllt die gleiche Aufgabe mit nur etwa 4.000 Zeilen, was weniger Fehler, bessere Leistung und einfachere Sicherheitsaudits bedeutet.
Aber hier ist das Problem: Während WireGuard selbst einfach ist, kann die Verwaltung mehrerer VPN-Clients, die Erstellung von Konfigurationsdateien und die Verfolgung der Zugriffsberechtigten allein über die Kommandozeile mühsam werden, weshalb ein Webinterface sehr praktisch ist.
In diesem Leitfaden richten wir eine vollständige WireGuard VPN Server mit einer benutzerfreundlichen Weboberfläche, mit der Sie alles über Ihren Browser verwalten können, z. B. das Hinzufügen neuer Geräte, das Generieren von QR-Codes für mobile Clients und die Überwachung von Verbindungen, ohne eine einzige Konfigurationsdatei manuell anzufassen.
Was Sie brauchen
Bevor wir beginnen, vergewissern Sie sich, dass Sie alles haben:
- Ein Linux-Server mit einer öffentlichen IP-Adresse (ein VPS von Anbietern wie DigitalOcean, Linodeoder AWS funktioniert perfekt).
- Root-Zugriff oder sudo-Rechte auf diesem Server.
- Ein grundlegendes Verständnis von SSH (Sie sollten wissen, wie Sie sich mit Ihrem Server verbinden können).
Diese Anleitung geht davon aus, dass Sie Ubuntu 22.04 oder Ubuntu 24.04, aber die Schritte funktionieren ähnlich auf Debian und anderen Distributionen mit geringfügigen Anpassungen.
Verstehen der Architektur
Nehmen wir uns einen Moment Zeit, um zu verstehen, was wir bauen, bevor wir anfangen, Befehle einzugeben.
A WireGuard Die Einrichtung besteht aus Peers – Geräten, die über verschlüsselte Tunnel miteinander kommunizieren können.
In unserem Fall haben wir’s:
- Der Server: Ihr Linux-Rechner mit einer öffentlichen IP-Adresse, der als zentraler Knotenpunkt fungiert, mit dem sich alle Ihre Geräte verbinden.
- Die Clients: Ihr Laptop, Telefon, Tablet oder jedes andere Gerät, das Sie schützen möchten. Jeder Client erhält sein eigenes kryptografisches Schlüsselpaar und seine eigene Konfiguration.
- Die Webschnittstelle: Eine leichtgewichtige Webanwendung (wir verwenden WireGuard-UI), das auf Ihrem Server läuft und Ihnen ein Dashboard bietet, mit dem Sie alles verwalten können.
Wenn ein Client eine Verbindung herstellen möchte, baut er einen direkten verschlüsselten Tunnel zum Server auf, und der Server leitet dann den Internetverkehr des Clients weiter oder erlaubt einfach den Zugriff auf Ressourcen im lokalen Netzwerk des Servers, je nachdem, wie Sie es konfigurieren.
Schritt 1: Installieren von WireGuard auf Ubuntu Server
Stellen Sie zunächst sicher, dass Ihr System auf dem neuesten Stand ist und die erforderlichen Tools installiert sind. Verwenden Sie dazu den folgenden Befehl, der Ihre Paketlisten aktualisiert und veraltete Software aktualisiert.
sudo apt update && sudo apt upgrade -y
Als nächstes installieren Sie WireGuard selbst:
sudo apt install wireguard -y
Da WireGuard in den Linux-Kernel integriert ist (für Kernel 5.6 und höher), installiert dieser Befehl in erster Linie die Userspace-Tools, die zur Konfiguration und Verwaltung von WireGuard Schnittstellen.

Schritt 2: Aktivieren der IP-Weiterleitung unter Ubuntu
Standardmäßig, Ubuntu leitet keine Pakete zwischen den Netzwerkschnittstellen weiter, was ein Sicherheitsmerkmal ist, dass Ihr Server nicht als Router fungiert, es sei denn, Sie weisen ihn explizit dazu an, aber für einen VPN-Server brauchen wir diese Funktionalität.
Wenn Ihr Telefon eine Verbindung zum VPN herstellt und versucht, eine Website zu besuchen, muss der Server diese Anfrage von der WireGuard Schnittstelle zu seiner öffentlichen Netzwerkschnittstelle und leitet dann die Antwort zurück.
Um die IP-Weiterleitung dauerhaft zu aktivieren, müssen wir eine Systemkonfigurationsdatei bearbeiten:
sudo nano /etc/sysctl.conf
Suchen Sie nach dieser Zeile (sie kann mit einem Kommentar versehen sein # am Anfang):
#net.ipv4.ip_forward=1
Entfernen Sie die # um die Kommentare zu entfernen, oder fügen Sie die Zeile hinzu, wenn sie nicht vorhanden ist:
net.ipv4.ip_forward=1
Speichern Sie die Datei und wenden Sie die Änderung an, ohne neu zu booten:
sudo sysctl -p

Schritt 3: Konfigurieren Sie Firewall und Routing für WireGuard
Ihr VPN-Server muss eingehende Verbindungen über den Port WireGuard verwendet (standardmäßig, UDP-Port 51820). Außerdem muss der Datenverkehr zwischen der VPN-Schnittstelle und Ihrer öffentlichen Netzwerkschnittstelle ordnungsgemäß weitergeleitet werden.
Zunächst müssen wir Ihre öffentliche Netzwerkschnittstelle identifizieren:
ip route | grep default
Sie werden eine Ausgabe wie diese sehen:
default via 192.168.1.1 dev eth0 proto dhcp src 192.168.1.100 metric 100
Der Name der Schnittstelle lautet hier `eth0`, aber er kann auf Ihrem System anders lauten, er könnte `ens3`, `enp0s3` oder etwas Ähnliches.
Konfigurieren wir nun die ufw-Firewall (Ubuntu’s Standard-Firewall):
# Allow SSH (if you haven't already) sudo ufw allow 22/tcp # Allow WireGuard sudo ufw allow 51820/udp # Allow the web interface (we'll use port 5000) sudo ufw allow 5000/tcp
Als nächstes müssen wir eine NAT (Übersetzung von Netzwerkadressen), die Ihren Server anweist, den VPN-Datenverkehr so zu maskieren, als käme er vom Server selbst, wenn er ins Internet weitergeleitet wird.
sudo nano /etc/ufw/before.rules
Fügen Sie diese Zeilen am Anfang der Datei ein, direkt nach den Header-Kommentaren, aber vor den *filter Zeile und ersetzen Sie eth0 durch Ihren tatsächlichen Schnittstellennamen:
# NAT table rules for WireGuard *nat :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE COMMIT
Das bedeutet Folgendes:
*nat: Wir arbeiten mit der NAT-Tabelle.-s 10.0.0.0/24: Für Pakete, die aus unserem VPN-Netzwerk kommen (10.0.0.0/24 ist das Subnetz, das wir den VPN-Clients zuweisen).-o eth0: Die Pakete gehen über die Schnittstelle eth0 aus.-j MASQUERADE: Schreiben Sie die Quell-IP so um, dass sie die öffentliche IP des Servers ist.
Speichern und beenden, dann aktivieren und neu laden UFW:
sudo ufw enable sudo ufw reload
Schritt 4: Installation der WireGuard-UI auf Ubuntu Server
Jetzt kommt der interessante Teil, das Einrichten der Weboberfläche mit WireGuard-UIdie eine saubere und einfache, in Go geschriebene Webanwendung ist.
Erstellen Sie zunächst ein Verzeichnis für WireGuard-UI:
sudo mkdir -p /opt/wireguard-ui cd /opt/wireguard-ui
Als nächstes laden Sie die neueste Version von WireGuard-UI von der GitHub-Versionen-Seiteaber zum Zeitpunkt des Schreibens, wget-Befehl erhält eine aktuelle stabile Version:
sudo wget https://github.com/ngoduykhanh/wireguard-ui/releases/download/v0.6.2/wireguard-ui-v0.6.2-linux-amd64.tar.gz
Entpacken Sie die heruntergeladene Datei und machen Sie sie ausführbar:
sudo tar -xzf wireguard-ui-v0.6.2-linux-amd64.tar.gz sudo chmod +x wireguard-ui
Bevor wir die Schnittstelle starten, müssen wir einen systemd-Dienst einrichten, damit er beim Booten automatisch läuft.
sudo nano /etc/systemd/system/wireguard-ui.service
Fügen Sie diese Konfiguration ein:
[Unit] Description=WireGuard UI After=network.target [Service] Type=simple WorkingDirectory=/opt/wireguard-ui ExecStart=/opt/wireguard-ui/wireguard-ui Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
Speichern und beenden Sie, aktivieren und starten Sie dann den Dienst:
sudo systemctl daemon-reload sudo systemctl enable wireguard-ui sudo systemctl start wireguard-ui
Prüfen Sie, ob er läuft:
sudo systemctl status wireguard-ui

Schritt 5: Zugriff auf die Wireguard-UI
Öffnen Sie Ihren Webbrowser und navigieren Sie zur folgenden URL, ersetzen Sie dabei YOUR_SERVER_IP durch die tatsächliche öffentliche IP-Adresse Ihres Servers.
http://YOUR_SERVER_IP:5000
Sie sehen eine Anmeldeseite, auf der Sie die folgenden Standard-Anmeldedaten verwenden können:
Username: admin Password: admin

Wichtig: Ändern Sie diese sofort nach dem Einloggen. Klicken Sie oben rechts auf Ihren Benutzernamen und dann auf “Einstellungen” und aktualisieren Sie Ihr Passwort.
Schritt 6: Konfigurieren des WireGuard-Servers
Sobald Sie eingeloggt sind, gelangen Sie zum WireGuard-UI-Dashboard. Um mit der Konfiguration Ihres Servers zu beginnen, klicken Sie auf “WireGuard-Server” in der linken Seitenleiste und setzen Sie den Schnittstellennamen auf 10.0.0.1/24 (die Standardschnittstelle von WireGuard) und den Listen Port auf 51820.
In der Post Up Script Feld eingeben:
iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
und in das Feld Post Down Script Feld, eingeben:
iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
Achten Sie darauf, dass Sie eth0 durch den Namen Ihrer tatsächlichen Netzwerkschnittstelle ersetzen, falls dieser anders lautet, und die Address to 10.0.0.1/24ein, die die interne VPN-IP-Adresse des Servers sein wird.
Wenn Sie auf Konfig anwendenerstellt der WireGuard die wg0 Schnittstelle, lauscht auf VPN-Verbindungen an Port 51820, weisen Sie Ihrem Server seine VPN-IP zu und konfigurieren Sie Firewall-Regeln, um den VPN-Datenverkehr ordnungsgemäß weiterzuleiten.
Die Benutzeroberfläche generiert außerdem automatisch die privaten und öffentlichen Schlüssel Ihres Servers. Nachdem Sie die Einstellungen vorgenommen haben, sollte die Oberfläche wie folgt aussehen Aktivund zeigt damit an, dass Ihr WireGuard-Server in Betrieb ist und funktioniert.

Schritt 7: Fügen Sie Ihren ersten WireGuard-Client hinzu
Fügen wir nun ein Gerät zu Ihrem VPN hinzu, z. B. Ihren Laptop, Ihr Telefon oder ein anderes Client-Gerät. Klicken Sie in der linken Seitenleiste auf “Kunden”, dann klicken Sie auf “Neuen Kunden hinzufügen.”
Geben Sie dem Client einen beschreibenden Namen wie “Mein Laptop” oder “iPhone”, und geben Sie optional eine E-Mail ein, um das Gerät später zu identifizieren. Klicken Sie auf “Auto” um automatisch die nächste verfügbare IP-Adresse zuzuweisen (wahrscheinlich 10.0.0.2).
Für Erlaubte IPs geben Sie ein 0.0.0.0/0, ::/0ein, wodurch sichergestellt wird, dass der gesamte Datenverkehr des Clients durch das VPN geleitet wird. Wenn Sie nur Zugang zum internen Netzwerk des Servers wünschen, können Sie stattdessen dieses Subnetz angeben (z. B, 10.0.0.0/24).
Sobald alles eingestellt ist, klicken Sie auf “Absenden” und das Webinterface generiert automatisch eine vollständige WireGuard-Konfiguration für diesen Client, einschließlich eines eigenen kryptografischen Schlüsselpaares.

Schritt 8: Verbinden Ihres Client-Geräts
Nun müssen Sie die Konfiguration auf Ihr Gerät übertragen und WireGuard-Benutzeroberfläche macht dies mit QR-Codes für mobile Geräte und herunterladbaren Konfigurationsdateien für Computer einfach.
Für mobile Geräte (Telefon/Tablet):
- Installieren Sie die WireGuard-App aus Ihrem App-Store (sie ist sowohl für iOS als auch für Android verfügbar).
- In der WireGuard-Benutzeroberfläche Web-Interface, suchen Sie Ihren neu erstellten Client und klicken Sie auf das QR-Code-Symbol.
- Öffnen Sie die WireGuard App auf Ihrem Telefon, tippen Sie auf die
"+"Taste und wählen Sie “Aus QR-Code erstellen“. - Scannen Sie den in Ihrem Browser angezeigten QR-Code.
- Geben Sie Ihrer Verbindung einen Namen und tippen Sie auf “Tunnel erstellen“.
Das war’s! Legen Sie den Schalter für die Verbindung um, und Ihr mobiles Gerät leitet nun seinen gesamten Datenverkehr über Ihren VPN-Server.
Für Desktop/Laptop:
- Installieren Sie WireGuard von wireguard.com/install.
- In der WireGuard-Benutzeroberfläche Schnittstelle, klicken Sie auf das Download-Symbol neben Ihrem Client, um die
.confDatei herunterzuladen. - Öffnen Sie die WireGuard Anwendung auf Ihrem Computer, klicken Sie auf “Tunnel aus Datei importieren“, und wählen Sie die heruntergeladene Konfigurationsdatei aus.
- Klicken Sie auf “Aktivieren Sie” um eine Verbindung herzustellen.
Schritt 9: Testen Ihres VPN
Lassen Sie uns sicherstellen, dass alles richtig funktioniert. Besuchen Sie zunächst bei getrennter VPN-Verbindung whatismyipaddress.com und notieren Sie sich die angezeigte IP-Adresse.
Verbinden Sie sich dann mit Ihrem WireGuard VPN und aktualisieren Sie die Seite. Ihre IP-Adresse sollte nun die öffentliche IP-Adresse Ihres Servers anstelle Ihrer ursprünglichen IP-Adresse anzeigen, was bestätigt, dass der Datenverkehr durch das VPN geleitet wird.
Um weiter zu überprüfen, ob DNS korrekt funktioniert, können Sie den folgenden Befehl auf Ihrem verbundenen Gerät ausführen:
ping google.com
Wenn Sie Antworten sehen, leitet Ihr VPN den Datenverkehr korrekt weiter.
Um aktive Verbindungen auf Ihrem Server zu sehen, melden Sie sich per SSH an und führen Sie aus:
sudo wg show
Sie werden eine Ausgabe wie diese sehen:
interface: wg0 public key: [your server's public key] private key: (hidden) listening port: 51820 peer: [client's public key] endpoint: [client's IP]:random_port allowed ips: 10.0.0.2/32 latest handshake: 45 seconds ago transfer: 2.50 MiB received, 15.23 MiB sent
Dies zeigt, dass Ihr Client verbunden ist, wann er zuletzt mit dem Server kommuniziert hat und wie viele Daten übertragen wurden.
Schritt 10: HTTPS für WireGuard-UI verwenden
Wenn Sie jetzt auf Ihre WireGuard-Weboberfläche unter http://YOUR_SERVER_IP:5000zugreifen, werden Ihre Anmeldedaten und alle Konfigurationsdaten im Klartext über das Internet übertragen, und jeder, der den Datenverkehr zwischen Ihrem Browser und dem Server abfängt, könnte Ihr Administrator-Passwort sehen und möglicherweise Ihre Sitzung missbrauchen.
Die Lösung besteht darin, Ihre Webschnittstelle hinter einem Reverse Proxy mit HTTPS aktiviert ist und ein Reverse Proxy vor Ihrer Anwendung sitzt, alle verschlüsselten HTTPS-Verbindungen von Clients verarbeitet und dann die Anfragen über das lokale Netzwerk an Ihre Anwendung weiterleitet, wo das Abfangen kein Problem darstellt.
Wir verwenden Nginx (Hochleistungs-Webserver) als unseren Reverse-Proxy und Let’s Encrypt um eine kostenlose SSL Zertifikat, so dass Sie auf Ihre WireGuard-Schnittstelle unter https://vpn.yourdomain.com anstelle einer IP-Adresse über HTTP zugreifen können.
Nginx Webserver installieren
Zuerst müssen Sie eine DNS Eintrag für Ihre Domäne (https://vpn.yourdomain.com), der auf die IP-Adresse Ihres Servers verweist, und installieren Sie dann Nginx Webserver.
sudo apt update sudo apt install nginx -y
Nach der Installation können Sie Folgendes besuchen http://vpn.yourdomain.com in Ihrem Browser aufrufen und Sie werden die Standard-Nginx-Willkommensseite sehen, was bedeutet, dass Nginx funktioniert und vom Internet aus zugänglich ist.

Certbot für Let’s Encrypt installieren
Als nächstes installieren Sie Let’s Encrypt, eine kostenlose Zertifizierungsstelle, die SSL-Zertifikate und certbot ist ein Tool, das den Prozess der Beschaffung und Erneuerung dieser Zertifikate automatisiert.
sudo apt install certbot python3-certbot-nginx -y
Die python3-certbot-nginx Paket enthält ein Plugin, das Nginx automatisch für Sie konfigurieren kann, was den Prozess erheblich vereinfacht.
Nginx als Reverse-Proxy konfigurieren
Lassen Sie uns nun eine Nginx-Konfiguration erstellen, die Anfragen weiterleitet von https://vpn.yourdomain.com an Ihre WireGuard-UI-Anwendung weiterleitet, die auf localhost:5000.
Erstellen Sie eine neue Konfigurationsdatei.
sudo nano /etc/nginx/sites-available/wireguard-ui
Fügen Sie diese Konfiguration ein (ersetzen Sie vpn.yourdomain.com durch Ihre tatsächliche Domäne):
server {
listen 80;
listen [::]:80;
server_name vpn.yourdomain.com;
# This will be used by Certbot for the SSL certificate challenge
location /.well-known/acme-challenge/ {
root /var/www/html;
}
# Redirect all other HTTP traffic to HTTPS
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name vpn.yourdomain.com;
# SSL certificate paths (Certbot will fill these in)
ssl_certificate /etc/letsencrypt/live/vpn.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/vpn.yourdomain.com/privkey.pem;
# Modern SSL configuration
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
# Security headers
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Content-Type-Options "nosniff" always;
# Proxy settings
location / {
proxy_pass http://127.0.0.1:5000;
proxy_http_version 1.1;
# WebSocket support (if WireGuard-UI uses it)
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# Forward real client information
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Timeouts
proxy_connect_timeout 60s;
proxy_send_timeout 60s;
proxy_read_timeout 60s;
}
}
Aktivieren Sie nun diese Konfiguration, indem Sie einen symbolischen Link erstellen:
sudo ln -s /etc/nginx/sites-available/wireguard-ui /etc/nginx/sites-enabled/
Testen Sie Ihre Nginx-Konfiguration auf Syntaxfehler:
sudo nginx -t
Sie sollten sehen:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Wenn Sie irgendwelche Fehler sehen, gehen Sie zurück und überprüfen Sie Ihre Konfigurationsdatei auf Tippfehler.
Beziehen eines SSL-Zertifikats
Wenn alles korrekt konfiguriert ist, ist es nun an der Zeit, Folgendes auszuführen certbot Befehl auszuführen, der automatisch ein SSL-Zertifikat von Let’s Encrypt bezieht und Nginx für dessen Verwendung konfiguriert.
sudo certbot --nginx -d vpn.yourdomain.com
Der gesamte Vorgang dauert etwa 30 Sekunden, und wenn er abgeschlossen ist, erhalten Sie eine Erfolgsmeldung:
Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/vpn.yourdomain.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/vpn.yourdomain.com/privkey.pem
Laden Sie nun Nginx neu, um alles zu übernehmen:
sudo systemctl reload nginx
Automatische Erneuerung des Zertifikats
Let’s Encrypt Zertifikate sind nur 90 Tage lang gültig, um eine regelmäßige Erneuerung zu fördern und den potenziellen Schaden zu begrenzen, falls ein privater Schlüssel jemals kompromittiert wird.
Glücklicherweise, Certbot richtet bei der Installation automatisch einen Erneuerungstimer ein, und Sie können bestätigen, dass der Erneuerungsdienst aktiv ist, indem Sie ihn ausführen:
sudo systemctl status certbot.timer
Dieser Timer wird zweimal täglich überprüft und erneuert automatisch jedes Zertifikat, das innerhalb von 30 Tagen abläuft.
Um zu überprüfen, ob alles funktioniert, ohne eine tatsächliche Erneuerung durchzuführen, führen Sie aus:
sudo certbot renew –dry-run
Wenn der Test erfolgreich abgeschlossen wird, ist die automatische Zertifikatserneuerung vollständig konfiguriert, und Sie müssen sich keine Sorgen mehr über das Auslaufen Ihrer Zertifikate machen.
Aktualisieren Sie Ihre Firewall
Da wir jetzt Zugriff auf WireGuard-UI über Nginx über den Standard-HTTPS-Port (443), müssen wir dies in unserer Firewall zulassen und können optional den direkten Zugang zu Port 5000.
sudo ufw allow 443/tcp
Wenn Sie den direkten Zugriff auf die WireGuard-Benutzeroberfläche über Port 5000 verhindern möchten (und damit die Verwendung der HTTPS-Schnittstelle erzwingen möchten), können Sie diese Regel auch entfernen:
sudo ufw delete allow 5000/tcp
Laden Sie die Firewall neu:
sudo ufw reload
Schritt 11: Konfigurieren Sie das WireGuard-UI so, dass es nur auf Localhost hört
Seit Nginx nun alle externen Verbindungen verarbeitet, sollten wir folgende Konfiguration vornehmen WireGuard-UI so dass nur Verbindungen vom lokalen Rechner akzeptiert werden, wodurch verhindert wird, dass jemand direkt auf den Port 5000, selbst wenn sie feststellen, dass der Port offen ist.
Stoppen Sie die WireGuard-Benutzeroberfläche Dienst:
sudo systemctl stop wireguard-ui
Bearbeiten Sie die Servicedatei:
sudo nano /etc/systemd/system/wireguard-ui.service
Ändern Sie die ExecStart Zeile, um nur an localhost zu binden:
[Unit] Description=WireGuard UI After=network.target [Service] Type=simple WorkingDirectory=/opt/wireguard-ui Environment="BIND_ADDRESS=127.0.0.1:5000" ExecStart=/opt/wireguard-ui/wireguard-ui Restart=always RestartSec=10 [Install] WantedBy=multi-user.target
Speichern und beenden Sie, laden Sie dann systemd neu und starten Sie den Dienst neu:
sudo systemctl daemon-reload sudo systemctl start wireguard-ui sudo systemctl status wireguard-ui
Öffnen Sie schließlich Ihren Browser und navigieren Sie zu:
https://vpn.yourdomain.com
Sie sollten ein Vorhängeschloss-Symbol in der Adressleiste Ihres Browsers sehen. Sie können auf das Vorhängeschloss-Symbol klicken, um die Details des Zertifikats anzuzeigen. Sie werden sehen, dass es von Let’s Encrypt ausgestellt wurde und 90 Tage lang gültig ist.
Zusammenfassung
Inzwischen haben Sie erfolgreich eine voll funktionsfähige WireGuard VPN Server mit einer sicheren webbasierten Verwaltungsoberfläche. Anstatt Schlüssel, Konfigurationsdateien und Routing-Regeln manuell zu verwalten, WireGuard-UI bietet Ihnen ein einfaches Dashboard, um neue Geräte hinzuzufügen, QR-Codes zu erzeugen und aktive Verbindungen zu überwachen.
