OPNSense und Wireguard
Nachdem ich einige Zeit investiert habe, um Wireguard in OPNsense erfolgreich einzurichten, möchte ich hier einige Screenshots meines Testaufbaus teilen. In dieser Konfiguration habe ich OPNsense ausschließlich als VPN-Server verwendet und bewusst auf das WAN-Interface verzichtet. Für die Testzwecke habe ich OPNsense auf einem HyperV-Server installiert. Voraussetzung für das Setup ist ein Port-Forwarding für den Port 51820 am Router auf die IP-Adresse der OPNSense-Installation und eine öffentliche IP-Adresse, siehe: aus dem Internet verfügbar machen: Port-Forwarding - OpenWRT.
Download und Installation von OPNSense
Der Downloadlink für OPNsense ist hier verfügbar.
Nach dem Herunterladen von OPNsense die ISO-Datei auf einen USB-Stick oder eine CD brennen. Im BIOS des Rechners die Boot-Reihenfolge ändern, um von diesem Medium zu starten, und dann den Installationsanweisungen folgen. Nach erfolgreicher Installation habe ich folgende Einstellungen verwendet:
Netzwerk-Einstellungen
Wird im bestehenden Netzwerk bereits ein DHCP-Server eingesetzt, sollte der DHCP-Server von OPNSense deaktiviert werden:
Häkchen für "Enable" sollte natürlich entfernt werden.
Damit OpenSense in der Lage ist den Weg in Richtung Internet zu finden, wird die IP-Adresse des Routers benötigt. Menü: "System" / "Gateways" / "Configuration":
Das Gateway kann dann in "Interfaces" / "LAN" verwendet werden:
Für die Namensauflösung habe ich den Google DNS hinzugefügt: "System" / "General DNS":
WireGuard-Instance
WireGuard kann in OPNSense einfach durch das Hinzufügen einer Instance aktiviert werden:
Dabei werden über "Generate new keypair" ein Public und Private-Key für WireGuard generiert.
Port-Forwarding, Zugriff vom Internet
Am Router wird ein Port-Forwarding auf die IP-Adresse von OPNSense benötigt: Port 51820, siehe: aus dem Internet verfügbar machen: Port-Forwarding - OpenWRT. Der Zugriff aus dem Internet erfolgt über die öffentliche IP-Adresse des Internetzugangs, siehe auch: eigene öffentliche IP anzeigen - was ist meine IP-Adresse?
Clients anlegen
Für den Zugriff können dann mehrere Clients angelegt werden, als Endpoint wird die öffentliche IP-Adresse des Internetzugangs verwendet:
Nach dem Scannen des QR-Codes mit der WireGuard Android-App legt die App ein Verbindungsprofil an. Vorausgesetzt das Portforwarding wurde richtig eingerichtet, wird der Verbindungsversuch jetzt in OPNSense in der Firewall gelistet:
Firewall / Anpassungen
Die Live View der Firewall-Log Files zeigt uns ab jetzt, welche Verbindungen blockiert werden. Wie in folgenden Screenshot ersichtlich, verhindert die OPNSense Firewall eine Verbindung auf die WireGuard-Instanz:
OPNSense benötigt an dieser Stelle eine Firewall-Regel für die eingehende Verbindung aus dem Internet:
Zudem fehlt jetzt noch eine Regel für den Zugriff auf das interne Netzwerk:
Fazit
Die Einrichtung von WireGuard auf OPNsense als VPN-Server ohne ein WAN-Interface zeigt, wie flexibel und anpassungsfähig OPNsense ist. Der Testaufbau auf einem HyperV-Server demonstriert dabei die Möglichkeit, OPNsense in virtuellen Umgebungen zu nutzen. Notwendiges Port-Forwarding über den Router und die Anpassung der Netzwerk- und Firewall-Einstellungen sind entscheidend, um den Zugriff vom Internet aus zu ermöglichen. Die OPNsense-Firewall bietet die notwendige Kontrollmöglichkeit, um Verbindungen zu überwachen und zu regulieren. Insgesamt ist die Verwendung von OPNsense für WireGuard eine leistungsstarke Lösung für sicheres VPN-Hosting.
{{percentage}} % positiv