Inhaltsverzeichnis
Letzte Aktualisierung am 05.08.2024, 12:08:02 Uhr
Vorwort
Aktuell nutze ich für die Kommunikation zwischen zwei Standorten einen klassischen IPSec Tunnel. Auf der einen Seite steht eine FRITZ!Box. Auf meiner Seite eine OPNsense. Inzwischen unterstützt auch die Firmware von AVM das neumodische VPN Protokoll WireGuard.
Umgebung/Voraussetzungen
FRITZ!Box
Parameter | Wert | Bemerkungen |
FRITZ!Box Firmware | FRITZ!OS:7.57 | |
IP Subnetz | 192.168.0.0/255.255.255.0 (24) | |
IP-Adresse der FRITZ!Box | 192.168.0.1 | |
DNS Namen | 01234567890.myfritz.net | Domain Service von AVM |
OPNsense
Parameter | Wert | Bemerkungen |
OPNsense Firmware | OPNsense 23.7.9-amd64 | FreeBSD 13.2-RELEASE-p5 |
IP Subnetz | 192.168.52.0/255.255.255.128 (25) | |
IP Adresse der OPNsense | 192.168.52.1 | |
DNS Namen | fw01.lan.daniel.wydler.eu | Eigene Domain |
Konfiguration IPSec Tunnel
Konfiguration der FRITZ!Box
Nachstehend die einzelnen Schritte für die Einrichtung des Tunnel Endpunktes.
Es handelt sich bei dem Subnetz 192.168.52.0/255.255.255.128 um das entfernte Subnetz auf der OPNsense. Aus dem später die Clients kommunizieren werden. |
Fertig. Auf der FRITZ!Box ist nun alles eingerichtet. |
Konfiguration der OPNsense
Punkt 1: Diese Einstellung sorgt dafür, dass die Gegenseite den Tunnel aufbauen muss. Gerade wenn die Gegenseite einen ISP nutzt, welche CGNAT einsetzen, ist diese Wert erforderlich. |
Punkt 12: Hier ist der DNS Name der FRITZ!Box einzutragen. |
Punkt 13: Hier ist das selbe Passwort einzugeben, wie bei der FRITZ!Box (VPN Kennwort). |
Punkt 3: Es handelt sich hierbei um das Subnetz auf FRITZ!Box |
Punkt 5: Es handelt sich hierbei um das Subnetz auf der OPNsense. |
Testergebnis
Wenige Sekunden später ist der VPN Tunnel aufgebaut.
IMCP-ECHO (Ping) von einem Client hinter der OPNsense auf die FRITZ!Box:
IMCP-ECHO (Ping) von einem Client hinter der FRITZ!Box auf die OPNsense:
Konfiguration WireGuard Tunnel
Konfiguration der FRITZ!Box
Es handelt sich bei 192.168.52.0/255.255.255.128 um ein Subnetz, welches über den Tunnel später nutzbar sein soll. |
An der Stelle nicht vergessen, die Einstellungen herunterladen. Diese sind später für die Konfiguration des WG Tunnels auf der OPNsense notwendig. |
Konfiguration der OPNsense
Ausgangslage ist die Datei „wg_config.conf“, welche zuvor von der FRITZ!Box exportiert wurde. Nachstehend exemplarisch der Inhalt meiner Datei.
[Interface] PrivateKey = +KNDqTqsl6AE+wk00000000000000000fI8OcgsoYm0= Address = 192.168.52.1/25 DNS = 192.168.0.1 DNS = fritz.box [Peer] PublicKey = BsCeBZKtKgNpcTFE0000000000000000nH428NzXFH4= PresharedKey = 8PVl9EW3DG9rNcG0000000000000ndJkNTk+knncpPk= AllowedIPs = 192.168.0.0/24 Endpoint = 3sx0w000000jjzyr.myfritz.net:50205 PersistentKeepalive = 25
So kann jeder Zeit nachvollzogen werden, welcher Wert der FRITZ!Box in der WireGuard Konfiguration verwendet wurde.
Falls der Port 51281 bereits in Verwendung ist, den nächst höheren, freien Port eingeben. |
Damit Die WireGuard Instanz auch über das Internet über den Port 51281 erreichbar ist, ist hierfür eine neue Regel auf dem WAN Interface notwendig. |
Abschließend nicht vergessen auf der OPNsense die notwendigen Firewall Regeln von und zu dem jeweiligen Standort auf den Interfaces anzulegen.
Testen der Tunnel Verbindung
Nachstehend natürlich noch ein Funktionstest des WireGuard Tunnels. Und zwar von der OPNsense in Richtung der FRITZ!Box.
Auf der FRITZ!Box hat man leider nur rudimentäre Prüfungsmöglichkeit.
Sonstiges
Wird als Endpoint Adresse eine FQDN verwendet, wird dieser ausschließlich beim Start des Tunnels aufgelöst. Wenn für einen oder beide Standorte dynamische IP-Adressen verwendet werden, funktioniert der Tunnel nicht mehr. Passiert immer dann wenn durch eine Zwangstrennung o.ä. seitens Provider die IPv4 Adresse und/oder IPv6 Präfix gewechselt wird.
Abhilfe schafft in diesen Fall ein neuer Cron auf der OPNsense:
In diesen Fall wird der Cron jeden Tag im Jahr um 04:20 Uhr ausgeführt. Dieser Zeitpunkt muss natürlich die jeweiligen Gegebenheiten angepasst werden. |
Viel Spaß beim Ausprobieren. 🙂