WireGuard (oft auch Wireguard geschrieben) ist ein modernes VPN-Protokoll, das Verbindungen zwischen Geräten sicher und blitzschnell macht – ohne komplizierte Einrichtung. In diesem Beitrag zeige ich dir, was es kann, wie es funktioniert und wie du in wenigen Minuten dein eigenes VPN startest.
Was ist WireGuard?
WireGuard ist ein schlankes, quelloffenes VPN. Es erstellt einen „Tunnel“ zwischen zwei oder mehr Geräten (Peers), damit Daten sicher über das Internet übertragen werden. Es läuft auf Linux, Windows, macOS, Android und iOS und ist so minimal gebaut, dass es leicht zu warten und sehr schnell ist.
Offizielle Seite: https://www.wireguard.com/
Vorteile in Kürze
- Sehr schnell: moderne Kryptografie (ChaCha20, Curve25519)
- Einfach: kleine Konfiguration, klare Konzepte
- Stabil: gutes Roaming bei wechselnden Netzen (WLAN, LTE)
- Sicher: Audit-freundlicher, schlanker Code
- Plattformübergreifend: Apps und Tools für alle gängigen Systeme
- Open Source: transparent und kostenlos nutzbar
Wie funktioniert WireGuard?
- Jedes Gerät ist ein „Peer“ mit einem Schlüsselpaar (Public/Private Key).
- Verbindungen laufen über UDP (standardmäßig Port 51820).
- „AllowedIPs“ steuern, welche Zielnetze durch den Tunnel gehen (Split- oder Full-Tunnel).
- Die Authentifizierung geschieht per öffentlichem Schlüssel, kein Passwort nötig.
- Minimaler Overhead = hohe Performance und niedriger Stromverbrauch.
Mehr Details im Quickstart: https://www.wireguard.com/quickstart/
Was du brauchst
- Einen Server mit öffentlicher IP (z. B. vServer/Cloud), Linux empfohlen
- Einen offenen UDP-Port (51820 oder eigener Port)
- Optional: Domainname
- Ein Endgerät als Client (Laptop, Smartphone etc.)
- Grundkenntnisse Terminal/Editor (für Linux-Setup)
Tipp: Wenn du nur dein Smartphone schützen willst, kannst du auch einen fertigen WireGuard‑Provider oder eine NAS/Router-Integration nutzen. Dieser Artikel zeigt aber das DIY‑Setup.
Schnellstart: eigenes WireGuard-VPN in 15 Minuten
Beispiel: Linux-Server (Debian/Ubuntu) + Smartphone als Client. Internes VPN-Netz: 10.0.0.0/24.
1) Server: Installation
sudo apt update
sudo apt install wireguard
Optional (für QR-Codes):
sudo apt install qrencode
2) Server: Schlüssel erzeugen
wg genkey | tee server_private.key | wg pubkey > server_public.key
Notiere den Inhalt beider Dateien. Bewahre private Schlüssel sicher auf.
3) Server: Konfiguration anlegen
Datei /etc/wireguard/wg0.conf:
[Interface]
PrivateKey = SERVER_PRIVATE_KEY
Address = 10.0.0.1/24
ListenPort = 51820
SaveConfig = false
# Optional: Full-Tunnel NAT fürs Internet (IPv4)
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
Hinweis: eth0 ggf. an dein Interface anpassen (ip a prüfen).
IPv4-Forwarding aktivieren:
echo 'net.ipv4.ip_forward=1' | sudo tee /etc/sysctl.d/99-wireguard.conf
sudo sysctl --system
4) Server: starten und dauerhaft aktivieren
sudo wg-quick up wg0
sudo systemctl enable wg-quick@wg0
5) Client: Schlüssel erzeugen
Auf dem Client (z. B. Laptop) oder temporär auf dem Server:
wg genkey | tee client_private.key | wg pubkey > client_public.key
6) Client: Konfiguration
Beispiel client.conf (Client-IP: 10.0.0.2):
[Interface]
PrivateKey = CLIENT_PRIVATE_KEY
Address = 10.0.0.2/24
DNS = 1.1.1.1
[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = SERVER_PUBLIC_IP_OR_DOMAIN:51820
# Full-Tunnel (alles durch VPN):
AllowedIPs = 0.0.0.0/0, ::/0
# Split-Tunnel (nur internes Netz):
# AllowedIPs = 10.0.0.0/24
PersistentKeepalive = 25
- Full-Tunnel: gesamter Internetverkehr geht durch das VPN (erfordert NAT am Server).
- Split-Tunnel: nur Zugriffe auf das VPN-Netz (keine Internet-Weiterleitung nötig).
7) Server: Client als Peer eintragen
Ergänze in /etc/wireguard/wg0.conf:
[Peer]
PublicKey = CLIENT_PUBLIC_KEY
AllowedIPs = 10.0.0.2/32
Neu laden:
sudo wg-quick down wg0 && sudo wg-quick up wg0
8) Smartphone-Setup (optional)
- App „WireGuard“ installieren (Android/iOS).
- Client-Konfiguration importieren (Datei oder QR):
- QR (am Server erzeugen):
bash
qrencode -t ansiutf8 < client.conf
- Verbinden und Status prüfen.
9) Funktion prüfen
- Auf dem Client:
wg
zeigt Handshake, Transfer etc.
- Bei Full-Tunnel: IP prüfen (sollte Server-IP sein).
- Bei Split-Tunnel: 10.0.0.1 anpingen oder interne Dienste nutzen.
Häufige Fragen (FAQ)
- Ist WireGuard besser als OpenVPN/IPsec?
- Für viele Use-Cases ja: einfacher, oft schneller, weniger Overhead. OpenVPN/IPsec bleiben aber etabliert und bieten teils mehr Enterprise‑Features.
- Welcher Port?
- Standard ist UDP 51820. Du kannst jeden freien UDP-Port nutzen.
- Läuft das hinter NAT/CGNAT?
- Ja. Für eingehende Verbindungen braucht der Server eine öffentliche IP. Clients hinter NAT funktionieren in der Regel ohne Port‑Forwarding.
- Mehrere Clients?
- Jeder Client bekommt einen eigenen Schlüssel und eine eindeutige IP im VPN (z. B. 10.0.0.2/32, 10.0.0.3/32 …).
- Sicherheit?
- Moderne Kryptografie und extrem schlanker Code. Wie immer: System aktuell halten, Schlüssel schützen, least privilege bei AllowedIPs.
Tipps & Best Practices
- Erzeuge und sichere Backups deiner .conf-Dateien und Schlüssel.
- Nutze Firewalls: Erlaube nur UDP auf deinem WireGuard‑Port.
- Wähle sinnvolle AllowedIPs:
- Full-Tunnel: 0.0.0.0/0, ::/0
- Split-Tunnel: nur interne Netze (z. B. 10.0.0.0/24)
- Aktiviere IPv6 nur, wenn du es wirklich brauchst und konfiguriert hast.
- Setze DNS bewusst (z. B. 1.1.1.1, 9.9.9.9 oder deinen eigenen Resolver).
- Benenne Peers sinnvoll (wg set wg0 peer persistent-keepalive 25 hilft bei Mobilgeräten).
- Überwache mit wg show und Logfiles; halte System und Kernel aktuell.
Nützliche Links
- Offizielle Website: https://www.wireguard.com/
- Installation (alle Plattformen): https://www.wireguard.com/install/
- Quickstart & Doku: https://www.wireguard.com/quickstart/
Fazit: Mit WireGuard baust du schnell ein sicheres, performantes VPN – ideal für Remote‑Zugriff, Schutz im öffentlichen WLAN oder die Verbindung mehrerer Standorte. Probier’s aus!