OffshoreVps
Sicherheit17 Sept. 202610 Min. LesezeitVon dem OffshoreVps-Team

Eigenes WireGuard-VPN auf einem VPS einrichten

Schritt für Schritt: WireGuard auf Ubuntu oder Debian installieren, Schlüssel erzeugen, Server- und Client-Konfiguration schreiben, die Firewall öffnen und den Tunnel testen.

WireGuard ist ein modernes VPN-Protokoll, das schnell, klein und einfach zu konfigurieren ist. Wenn Sie Ihr eigenes auf einem VPS betreiben, erhalten Sie einen verschlüsselten Tunnel zu einem Server im Land Ihrer Wahl, ohne dass ein VPN-Unternehmen eines Dritten dazwischensteht. Diese Anleitung verwendet Ubuntu 24.04 oder Debian 12/13 und setzt voraus, dass Sie den Server bereits abgesichert haben.

Terminalfenster auf einem VPS mit den Befehlen zur Einrichtung von WireGuard, beginnend mit „sudo apt update“
Die Art von Befehlen, die Sie in dieser Anleitung auf Ihrem Server ausführen.

1. WireGuard installieren

sudo apt update
sudo apt install -y wireguard

2. Die Server-Schlüssel erzeugen

cd /etc/wireguard
umask 077
wg genkey | tee server.key | wg pubkey > server.pub

Durch umask 077 sind die Schlüsseldateien nur für root lesbar. Halten Sie server.key geheim.

3. Die Client-Schlüssel erstellen

Erzeugen Sie auf dem Server ein Schlüsselpaar für Ihren Laptop oder Ihr Telefon und kopieren Sie die Client-Konfiguration anschließend hinüber:

wg genkey | tee client1.key | wg pubkey > client1.pub

4. Die Server-Konfiguration schreiben

Ermitteln Sie zuerst den Namen Ihrer öffentlichen Netzwerkschnittstelle:

ip route get 1.1.1.1 | awk '{print $5; exit}'

Oft heißt sie eth0 oder ens3. Erstellen Sie /etc/wireguard/wg0.conf und ersetzen Sie die großgeschriebenen Werte durch Ihre eigenen:

[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = SERVER_PRIVATE_KEY
PostUp   = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ETH_IF -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o ETH_IF -j MASQUERADE

[Peer]
# client1
PublicKey = CLIENT1_PUBLIC_KEY
AllowedIPs = 10.8.0.2/32

Fügen Sie den Inhalt von server.key und client1.pub an den gekennzeichneten Stellen ein und ersetzen Sie ETH_IF durch den Namen Ihrer Schnittstelle.

5. IP-Weiterleitung aktivieren

echo "net.ipv4.ip_forward=1" | sudo tee /etc/sysctl.d/99-wireguard.conf
sudo sysctl --system
Die Schritte dieser Anleitung in der Reihenfolge: 1. 1. WireGuard installieren; 2. 3. Die Client-Schlüssel erstellen; 3. 5. IP-Forwarding aktivieren; 4. 7. Den Tunnel starten; 5. 9. Testen; 6. Einen Standort wählen
Die Schritte dieser Anleitung in der Reihenfolge.

6. Die Firewall öffnen

sudo ufw allow 51820/udp
sudo ufw route allow in on wg0
sudo ufw reload

7. Den Tunnel starten

sudo systemctl enable --now wg-quick@wg0
sudo wg show

Sie sollten die Schnittstelle sehen und, sobald sich ein Client verbindet, dessen letzten Handshake.

8. Den Client konfigurieren

Erstellen Sie auf Ihrem Gerät eine Konfiguration wie diese (die offiziellen WireGuard-Apps für Windows, macOS, Linux, iOS und Android können sie aus einer Datei oder einem QR-Code importieren):

[Interface]
Address = 10.8.0.2/24
PrivateKey = CLIENT1_PRIVATE_KEY
DNS = 1.1.1.1

[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = YOUR_SERVER_IP:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25

Mit AllowedIPs = 0.0.0.0/0, ::/0 wird der gesamte Datenverkehr durch den Tunnel geleitet. Um nur Ihr privates Netzwerk zu erreichen, verwenden Sie stattdessen 10.8.0.0/24.

9. Testen

  1. Aktivieren Sie den Tunnel auf dem Client.
  2. Führen Sie sudo wg show auf dem Server aus und prüfen Sie, dass ein aktueller Handshake vorliegt.
  3. Rufen Sie vom Client aus eine „Wie lautet meine IP“-Seite auf. Sie sollte die Adresse Ihres Servers zeigen.
  4. Prüfen Sie auf DNS-Leaks, wenn Privatsphäre das Ziel ist, und ergänzen Sie IPv6-Regeln, wenn Ihr Server IPv6 hat.

Weitere Geräte hinzufügen

Erzeugen Sie für jedes neue Gerät ein Schlüsselpaar, fügen Sie einen weiteren [Peer]-Block mit einer neuen Adresse wie 10.8.0.3/32 hinzu und führen Sie sudo wg syncconf wg0 <(wg-quick strip wg0) aus, um sie zu übernehmen, ohne bestehende Verbindungen zu trennen.

Einen Standort wählen

WireGuard-Server funktionieren an jedem unserer Standorte. Wählen Sie einen in Ihrer Nähe für mehr Geschwindigkeit oder im Land, aus dem Ihr Datenverkehr stammen soll. Siehe So wählen Sie einen VPS-Standort. Ein kleiner VPS reicht für einen persönlichen Tunnel mehr als aus.