# OPNsense WireGuard: Das VPN der nächsten Generation

TL;DR / Management Summary WireGuard ist der neue Goldstandard für VPNs. Es ist extrem schlank (ca. 4000 Zeilen Code), nutzt modernste Kryptografie (ChaCha20) und ist um den Faktor 3-5 schneller als OpenVPN. Ein Senior Admin nutzt WireGuard für Site-to-Site Kopplungen und performanten Remote-Access. Da es als Kernel-Modul läuft, bietet es minimale Latenzen und ist durch sein “Stealth-Design” (antwortet nicht auf unbefugte Anfragen) fast unsichtbar im Internet.


# 1. Einführung & Architektur

Einfachheit als Sicherheitsmerkmal.

WireGuard nutzt ein Peer-to-Peer Modell. Es gibt keinen klassischen “Server”, nur Peers, die miteinander sprechen.

# Architektur-Übersicht (Mermaid)

graph LR
    ADMIN[Admin Laptop] -->|UDP 51820| FW[OPNsense Firewall]
    FW -->|Tunnel Interface wg0| LAN[Internal Network 10.0.0.0/24]
    
    subgraph "Kryptographie"
    K1[Private Key Admin]
    K2[Public Key Admin]
    K3[Private Key Firewall]
    K4[Public Key Firewall]
    end
    
    K2 ---|Registered in| FW
    K4 ---|Registered in| ADMIN

# 2. Einrichtung in der Praxis

Der Weg zum schnellen Tunnel.

# Schritt 1: Plugin installieren

System -> Firmware -> Plugins. Installieren Sie os-wireguard.

# Schritt 2: Local (Server) konfigurieren

VPN -> WireGuard -> Settings -> Local.

  1. Name: WG_SERVER.
  2. Port: 51820.
  3. Tunnel Address: 10.10.10.1/24 (Ein dediziertes Transfer-Netz).
  4. Aktion: Klicken Sie auf “Generate new keypair”. Kopieren Sie den Public Key!

# Schritt 3: Endpoints (Clients) hinzufügen

Jeder User braucht einen Endpoint-Eintrag mit seinem Public-Key und einer festen IP aus dem Transfer-Netz (z.B. 10.10.10.2/32).

# Schritt 4: Firewall & NAT

  1. WAN-Regel: UDP Port 51820 erlauben.
  2. WG-Interface: Erlauben Sie den Traffic vom Transfer-Netz ins LAN.

# 3. Deep Dive: Allowed IPs & Routing

Das Herz von WireGuard.

Das Feld Allowed IPs am Client entscheidet, was durch den Tunnel geht:

Admin-Tipp: WireGuard hat keinen integrierten DHCP-Server. Verwalten Sie die IP-Adressen Ihrer Clients in einer Excel-Liste oder einem IPAM (Artikel 730), um Konflikte zu vermeiden.


# 4. Day-2 Operations: Roaming

Vom WLAN ins LTE ohne Abbruch.

WireGuard ist “Connectionless”.


# 5. Troubleshooting & “War Stories”

Wenn der Tunnel schweigt.

# Top 3 Fehlerbilder

  1. Symptom: Tunnel wird als Active angezeigt, aber kein Datendurchsatz.

    • Ursache: Mismatch bei den Keys oder die Firewall am Client blockiert UDP.
    • Lösung: wg show in der Shell ausführen und den Zeitstempel des “Latest Handshake” prüfen.
  2. Symptom: DNS-Auflösung geht nicht.

    • Ursache: Der Client hat keinen DNS-Server konfiguriert oder die OPNsense erlaubt keinen DNS-Traffic auf der Tunnel-IP.
    • Fix: DNS = 10.10.10.1 in der Client-Config setzen.
  3. Symptom: MTU-Probleme (Webseiten laden nicht).

    • Lösung: Setzen Sie MTU = 1420 in der Client-Config (WireGuard Header braucht 80 Bytes).

# “War Story”: Der “Stumme” Client

Ein Admin wunderte sich, warum sein WireGuard-Port beim Scan als “Closed” angezeigt wurde, obwohl der Dienst lief. Die Entdeckung: Das ist ein Feature! WireGuard schickt kein ICMP-Unreachable und keine Fehlermeldung zurück, wenn ein Paket nicht mit einem bekannten Public-Key signiert ist. Lehre: Port-Scanner sind bei WireGuard nutzlos. Die einzige Wahrheit liefert das Log der OPNsense oder das Kommando wg show.


# 6. Monitoring & Reporting

Performance-Check.

# WireGuard Status GUI

Unter VPN -> WireGuard -> Diagnostics sehen Sie:


# 7. Fazit & Empfehlung

WireGuard ist die Zukunft der VPN-Technologie.


# Anhang: Cheatsheet

Aufgabe Befehl (Shell)
Status sehen wg show
Keys generieren `wg genkey
Config Pfad /usr/local/etc/wireguard/
Dienst restart pluginctl -s wireguard restart

# Referenzen