VPNSmith
self-host-vpnHOWTO

WireGuard auf einem OpenWrt-Router einrichten (Client und Server, 2026)

WireGuard auf einem OpenWrt-Router einrichten (2026): luci-proto-wireguard installieren, dann OpenWrt als VPN-Client (das ganze LAN nach draußen leiten) oder als Server (Fernzugriff auf dein Heimnetz) konfigurieren. Firewall, DNS, MTU und Lösungen bei fehlendem Handshake inklusive.

Von Eric Gerard · Gründer · VPNSmith - Spezialist für selbstgehostete VPNs & DSGVO-VPS7 Min. LesezeitPhoto via Pexels

WireGuard läuft nativ auf OpenWrt, was einen einzelnen Router entweder in ein VPN-Gateway fürs gesamte Netzwerk oder in einen Fernzugriffsserver für dein Zuhause verwandelt. Diese Anleitung richtet WireGuard auf einem OpenWrt-Router 2026 von Anfang bis Ende ein: das Paket installieren, dann zwei echte Konfigurationen - OpenWrt als Client (das gesamte LAN über einen entfernten Peer nach draußen leiten) und OpenWrt als Server (von überall auf dein Heimnetz zugreifen).

Kurze Antwort: OpenWrt kann WireGuard nativ ausführen. Installiere das Paket luci-proto-wireguard, lege dann in LuCI unter Network > Interfaces eine WireGuard-Schnittstelle an. Betreibe OpenWrt als Client, um den gesamten LAN-Verkehr über einen entfernten VPN-Peer zu leiten, oder als Server, um entfernten Geräten Zugriff auf dein Heimnetz zu geben. Das Schwierige sind selten die Schlüssel - es sind die Firewall-Zone und das Routing, weshalb die meisten Probleme mit "kein Handshake" oder "kein Internet" genau dort gelöst werden.

Türkise Glasfaser-Netzwerkkabel, die in die Ports eines Rack-Switches eingesteckt sind
Türkise Glasfaser-Netzwerkkabel, die in die Ports eines Rack-Switches eingesteckt sind

Was du brauchst, bevor du anfängst

  • Einen Router mit OpenWrt und genug freiem Flash-Speicher und RAM für die WireGuard-Pakete. Geräte mit sehr wenig Flash (4/32 MB) haben womöglich keinen Platz - prüfe zuerst den freien Speicher deines Geräts.
  • Einen WireGuard-Peer, mit dem du dich verbindest. Im Client-Modus ist das der entfernte Server, über den du nach draußen gehst; im Server-Modus sind es die entfernten Geräte, die sich zurückverbinden. Ein selbst gehosteter Server auf einem Contabo VPS ist ein zuverlässiger Peer, den du vollständig kontrollierst.
  • Die Schlüssel und den Endpoint der Gegenseite: im Client-Modus den öffentlichen Schlüssel des Servers und seinen erreichbaren host:port. Jeder Peer bekommt sein eigenes Schlüsselpaar - einen Schlüssel auf mehreren Geräten wiederzuverwenden bricht den Handshake.

Falls dir das Protokoll selbst neu ist, deckt unser Erklärartikel Was ist WireGuard die Kryptografie ab und warum es schneller als OpenVPN ist.

Schritt 1 - WireGuard-Unterstützung installieren

WireGuard ist nicht immer vorinstalliert, füge die Pakete also hinzu. Über SSH:

opkg update
opkg install luci-proto-wireguard wireguard-tools

luci-proto-wireguard fügt der LuCI-Weboberfläche das WireGuard-Protokoll hinzu, und wireguard-tools liefert dir den Befehl wg zum Erzeugen von Schlüsseln und Inspizieren von Tunneln. Du kannst diese auch über System > Software in LuCI installieren, falls du die Oberfläche bevorzugst. Aktualisiere LuCI nach der Installation, damit das neue Protokoll erscheint.

Schritt 2 - Schlüssel erzeugen

Jedes Ende eines WireGuard-Tunnels hat ein privates/öffentliches Schlüsselpaar. Erzeuge auf OpenWrt eines mit wireguard-tools:

wg genkey | tee privatekey | wg pubkey > publickey

Behalte den privaten Schlüssel auf diesem Router und teile nur den öffentlichen Schlüssel mit dem anderen Peer. Ist OpenWrt der Client, brauchst du zusätzlich den öffentlichen Schlüssel des Servers; ist OpenWrt der Server, sammelst du den öffentlichen Schlüssel jedes Clients, der sich verbinden wird.

Fall A - OpenWrt als WireGuard-Client (das ganze LAN nach draußen leiten)

Im Client-Modus verlässt jedes Gerät im LAN das Netz über den entfernten Peer - ein Full-Tunnel-VPN für das gesamte Heimnetz.

  1. Schnittstelle anlegen. Gehe in LuCI zu Network > Interfaces > Add new interface, benenne sie (z. B. wg0) und wähle WireGuard VPN als Protokoll.
  2. Schnittstelle ausfüllen. Setze den Private Key (den Schlüssel dieses Routers) und die IP-Adresse, die dieser Router im Tunnel einnimmt (die von deinem Server zugewiesene Adresse, z. B. 10.0.0.2/24).
  3. Peer hinzufügen. Füge unter dem Tab Peers den Server hinzu: seinen Public Key, Endpoint host und Endpoint port, Allowed IPs = 0.0.0.0/0 (und ::/0 für IPv6) für einen Full-Tunnel sowie Persistent Keepalive = 25, damit der Pfad das NAT überlebt.
  4. Firewall-Zone. Ordne die Schnittstelle wg0 einer Firewall-Zone zu. Die einfachste funktionierende Einrichtung ist, sie in die wan-Zone zu legen (oder eine eigene Zone, die vom lan weiterleiten darf und Masquerading aktiviert hat), damit der LAN-Verkehr per NAT durch den Tunnel geht.
  5. DNS. Setze das DNS des Tunnels auf deinen Server oder einen vertrauenswürdigen Resolver, damit Anfragen nicht zu deinem Provider zurückleaken.

Wenn es funktioniert, wird die öffentliche IP jedes LAN-Geräts zur IP des Servers.

Ein weißer WLAN-Router mit zwei Antennen und einem blauen Ethernet-Kabel, das in seinen LAN-Port eingesteckt ist
Ein weißer WLAN-Router mit zwei Antennen und einem blauen Ethernet-Kabel, das in seinen LAN-Port eingesteckt ist

Fall B - OpenWrt als WireGuard-Server (Fernzugriff auf dein Heimnetz)

Im Server-Modus lauscht OpenWrt auf eingehende Verbindungen, damit dein Handy oder Laptop das Heim-LAN von überall erreichen kann.

  1. Lege die Schnittstelle auf dieselbe Weise an (Network > Interfaces, Protokoll WireGuard VPN), gib dem Router seinen Private Key und eine VPN-seitige IP-Adresse (z. B. 10.0.0.1/24) und setze einen Listen Port (üblich ist 51820).
  2. UDP-Port öffnen / weiterleiten. Erlaube den gewählten UDP-Port eingehend in der Firewall. Steht OpenWrt hinter einem anderen Modem/Router, leite diesen UDP-Port an die OpenWrt-Box weiter; nutzt dein Provider CGNAT, ist eingehender Verkehr möglicherweise gar nicht erreichbar - siehe Dynamisches DNS fürs Self-Hosting.
  3. Jeden Client als Peer hinzufügen. Füge für jedes entfernte Gerät einen Peer mit seinem Public Key und Allowed IPs hinzu, gesetzt auf die Tunnel-IP dieses Clients (z. B. 10.0.0.2/32). Damit Clients das gesamte Heim-LAN erreichen, nimm dein LAN-Subnetz (z. B. 192.168.1.0/24) in die Client-Konfiguration auf und erlaube die Weiterleitung.
  4. Firewall-Weiterleitung. Lege die WireGuard-Schnittstelle in eine Zone, die an lan weiterleiten darf, damit verbundene Clients lokale Geräte erreichen.

Anatomie der Konfiguration

OpenWrt speichert dies in /etc/config/network, aber die Form entspricht einer Standard-WireGuard-Konfiguration. Hier mit expliziten Platzhaltern - füge niemals echte Schlüssel aus einer Anleitung ein; jedes Gerät erzeugt seine eigenen:

[Interface]
PrivateKey = <this-router-private-key>
Address = 10.0.0.1/24
ListenPort = 51820

[Peer]
PublicKey = <other-peer-public-key>
Endpoint = <peer-host-or-ip>:51820
AllowedIPs = 10.0.0.2/32
PersistentKeepalive = 25
  • PrivateKey - der geheime Schlüssel dieses Routers, lokal gehalten.
  • Address - die IP des Routers innerhalb des Tunnels.
  • ListenPort - nur nötig, wenn OpenWrt der Server ist.
  • PublicKey - der öffentliche Schlüssel des anderen Peers (im Client-Modus der des Servers).
  • Endpoint - der erreichbare host:port des Peers (nur die Client-Seite braucht das für einen ausgehenden Tunnel).
  • AllowedIPs - was durch den Tunnel geroutet wird: 0.0.0.0/0 für einen Full-Tunnel (Client) oder ein bestimmtes Tunnel-/LAN-Subnetz (Server).
  • PersistentKeepalive = 25 - hält den Pfad hinter dem NAT aktiv.

Fehlerbehebung auf OpenWrt

  • Kein Handshake: meist ein Firewall-Problem - die WireGuard-Schnittstelle ist in keiner Zone, oder die Zone kann nicht weiterleiten. Prüfe Endpoint-Host/-Port und dass der UDP-Port des Servers offen ist; bestätige, dass die öffentlichen Schlüssel übereinstimmen; denk daran, dass ein Heimserver hinter CGNAT eingehend unerreichbar sein kann. Mehr in unserem Leitfaden zur Handshake-Fehlerbehebung.
  • Verbunden, aber kein Internet (Client-Modus): die WireGuard-Zone braucht Masquerading, und die Weiterleitung lan -> wg muss erlaubt sein; sonst hat der per NAT geleitete LAN-Verkehr keinen Ausgang.
  • MTU: WireGuard nutzt standardmäßig 1420; bei einem PPPoE-WAN ist 1412 ein häufig funktionierender Wert. Wenn manche Seiten hängen, senke die Schnittstellen-MTU schrittweise - siehe unseren Leitfaden WireGuard-MTU-Fix.
  • DNS greift nicht: setze das DNS auf der WireGuard-Schnittstelle (oder verteile es über deine Firewall/DHCP), damit LAN-Clients den Resolver des Tunnels statt den des Providers nutzen.
  • Kill-Switch: route das gesamte LAN nur über die WireGuard-Zone und blockiere lan -> wan direkt, damit der Verkehr stoppt, wenn der Tunnel abbricht, statt über das normale WAN zu leaken.

Client vs. Server auf einen Blick

OpenWrt als ClientOpenWrt als Server
ZielDas ganze LAN über einen entfernten Peer nach draußen leitenEntfernten Geräten Zugriff auf dein Heim-LAN geben
AllowedIPs0.0.0.0/0 (Full-Tunnel)Tunnel-IP des Clients + LAN-Subnetz
Listen PortNicht erforderlichErforderlich (z. B. 51820, eingehend geöffnet)
Firewallwg-Zone -> wan, Masquerade, lan->wg weiterleitenwg-Zone darf an lan weiterleiten
EndpointZeigt auf den entfernten ServerClients zeigen auf den OpenWrt-Router

Fazit

OpenWrt macht WireGuard zu einer Funktion auf Router-Ebene: installiere luci-proto-wireguard, lege die Schnittstelle unter Network > Interfaces an und wähle Client (VPN fürs ganze LAN) oder Server (Fernzugriff). Fast jeder Fehler liegt an der Firewall-Zone oder am Routing, nicht an den Schlüsseln. Für den Peer am anderen Ende betreibt ein Contabo VPS für 5,50 EUR/Monat einen persönlichen WireGuard-Server, den dein OpenWrt-Router anwählen kann - ohne geteilte Schlüssel und mit voller Kontrolle.

Redaktioneller Leitfaden auf Basis des dokumentierten Verhaltens der WireGuard-Unterstützung von OpenWrt (luci-proto-wireguard / LuCI). Die genauen Menüs variieren je nach OpenWrt-Version leicht. Kommerzielle Links tragen das Attribut rel="sponsored nofollow"; eine Affiliate-Provision kann anfallen, ohne Mehrkosten für dich.

★ Nürnberger DSGVO-Rechenzentrum · ✓ Dedizierte IPv4 inklusive · 200+ Mbps garantiert

Hoste dein VPN auf deinem eigenen VPS → ContaboVoller Root-Zugriff · öffentliche IPv4 · wähle deine Region

Häufig gestellte Fragen

Kann OpenWrt WireGuard ausführen?
Ja. OpenWrt unterstützt WireGuard über das Kernel-Modul und das Paket luci-proto-wireguard, das der LuCI-Weboberfläche eine WireGuard-Protokolloption hinzufügt. Nach der Installation legst du eine WireGuard-Schnittstelle unter Network > Interfaces an, genau wie jede andere Verbindung. OpenWrt kann als WireGuard-Client arbeiten (den gesamten LAN-Verkehr über einen entfernten Peer nach draußen leiten) oder als WireGuard-Server (entfernten Geräten Zugriff auf dein Heimnetz geben). Du brauchst genug freien Flash-Speicher und RAM für das Paket sowie einen Peer, mit dem du dich verbindest - entweder einen selbst gehosteten Server oder einen Anbieter.
Client- oder Server-Modus auf OpenWrt - was brauche ich?
Das hängt von der Richtung des Verkehrs ab. Nutze den Client-Modus, wenn jedes Gerät in deinem Heimnetz über einen entfernten WireGuard-Peer nach draußen soll - etwa um das ganze LAN durch einen VPN-Server zu leiten, den du auf einem VPS kontrollierst. Nutze den Server-Modus, wenn du von außen auf dein Heimnetz zugreifen willst - Handys oder Laptops unterwegs, die sich zurückverbinden, um dein LAN, NAS oder lokale Dienste zu erreichen. Die OpenWrt-Konfiguration ist in beiden Fällen ähnlich; der Unterschied liegt darin, welche Seite den Handshake einleitet und was AllowedIPs abdeckt.
Warum gibt es auf OpenWrt keinen Handshake?
Ein leeres 'Latest handshake' bedeutet, dass sich die beiden Peers nie authentifiziert haben. Auf OpenWrt sind die üblichen Ursachen firewall-bezogen: Die WireGuard-Schnittstelle ist keiner Firewall-Zone zugeordnet, oder die Zone darf nicht an wan/lan weiterleiten. Weitere Ursachen sind ein falscher Endpoint oder UDP-Port, ein nicht geöffneter Server-Port, ein nicht passender öffentlicher Schlüssel oder das CGNAT deines Providers, das eingehendes UDP für einen Heimserver blockiert. WireGuard bleibt gegenüber nicht authentifizierten Paketen stumm, es gibt also keine Fehlermeldung - prüfe die Firewall-Zone, die Schlüssel und den erreichbaren Port.
Welche MTU sollte WireGuard auf OpenWrt verwenden?
Die Standard-MTU von WireGuard ist 1420. Auf vielen OpenWrt-Routern nutzt der WAN-Anschluss PPPoE, das weniger Overhead-Spielraum hat, weshalb dort eine WireGuard-MTU von 1412 ein häufig funktionierender Wert ist; bei einfachem Ethernet-WAN passt 1420 meist. Wenn manche Seiten laden und andere hängen, ist das ein klassisches MTU-Symptom - senke die Schnittstellen-MTU schrittweise, bis große Seiten und Downloads funktionieren, und kombiniere das mit MSS-Clamping, falls deine Firewall es anbietet.