OPNsense OpenVPN-site-to-site-Tunnel - Serverseite kann auf Clientseite nicht zugreifen
Hallochen Gemeinde!
Zwei Standorte sind über einen OpenVPN-site-to-site-Tunnel (beide auf OPNsense in aktueller Version) miteinander verbunden. Seite A (LanA) ist der OpenVPN-Server und Seite B (LanB) der OpenVPN-Client. Zu den erreichbaren Netzwerken gehört jeweils auch das Netzwerk des WAN-Interfaces (also WanA und WanB =/= StS-Tunnel-Interfaces). Die Verbindung wird mit dem Konfigurationsmodus "Gemeinsamer Schlüssel" aufgebaut. Alle erforderlichen Routen werden auf beiden Seiten automatisch beim Verbindungsaufbau generiert und sind zutreffend. Ebenso generiert OPNsense mit der Konfiguration des OpenVPN-Servers/-Clients das zugehörige Gateway und ergänzt beim Verbindungsaufbau die IP des gegenüberliegenden Tunnelendpunktes als Gateway-Adresse.
Beide OPNsense sind zugleich das jeweilige generelle Gateway für diese beiden Netzwerke. Der gesamte nach außen gerichtete Traffic verhält sich auf beiden Gateways ordnungs- und erwartungsgemäß.
Von Seite B aus kann auf alle Clients/Server im LanA zugegriffen werden - z.B. Client B1 ruft eine von Server A1 bereitgestellte Webseite auf. traceroute (oder tracert) und ping funktionieren gleichfalls in dieser Richtung prompt und erwartungsgemäß; dabei ist sehr schön zu sehen, dass das Routing über den entfernten Tunnelendpunkt auf Seite A läuft.
Hingegen funktioniert das in der entgegen Richtung nicht. Wird mittels traceroute (oder tracert) beispielsweise von Server A1 aus der Client B1 aufgerufen, ist in der Ausgabe als erster Hop die interne Adresse des Gateways angegeben. Bei den anderen 29 Hop sind es nur Sternchen als Ausgabe. Laut "Livestatus" gibt es keine Blockierungen - das dürfte auch nicht sein, weil der gesamte relevante Verkehr für die Tunnelverbindung mit entsprechenden Rules freigegeben ist. Bei "Status" bzw. "Sitzung" finden sich als korrespondierende Einträge zum Ping etc. "NO_TRAFFIC:SINGLE" für den Eingang und "SINGLE:NO_TRAFFIC" für den Ausgang. Laut "Livestatus" / "Status" / "Sitzung" auf der OPNsense Seite B ist dort kein korrespondierender Traffic ersichtlich, was in der Gesamtschau, dass der zweite Hop nur mit Sternchen angegeben wird, plausibel und erwartungsgemäß erscheint.
Das Kuriose ist aber, wenn in der WebUI der OPNsense auf Seite A eine Diagnose mit "Ping" oder "Routenverfolgung" gestartet wird, dann ist alles von Seite B ordnungsgemäß erreichbar. Unter anderem wird dann auch der Tunnelendpunkt von Seite B als erster Hop angegeben. So soll es ja aus dem Inneren der OPNsense heraus auch sein. Zu der Kuriosität gehört auch, dass ich über deren WAN-IP die OPNsense WebUI der Seite B von Seite A aus aufrufen bzw. per ping / traceroute erreichen kann.
Somit scheint das Gateway von Seite A irgendwie nicht (immer) den "Ausgang" in Richtung Tunnel zu finden, wenn der Datenverkehr seinen Ursprung im LanA hat. Das ändert sich auch dann nicht, wenn eine Rule in der Firewall eingetragen wird, die ausdrücklich den ein- und/oder ausgehenden Verkehr von LanA nach LanB freigibt. An den Routing- und Firewall-Regeln kann es daher eigentlich nicht liegen, weil der Verkehr von LanA nach LanB grundsätzlich funktioniert, wie die Kuriosität zeigt.
Wie kann ich die OPNsense Seite A animieren die Kommunikation aus LanA ins LanB zu routen, wenn ein Ziel in LanB angesprochen werden soll?
Vielen Dank für Euren Input im Voraus und viele Grüße
HansDampf06
Zwei Standorte sind über einen OpenVPN-site-to-site-Tunnel (beide auf OPNsense in aktueller Version) miteinander verbunden. Seite A (LanA) ist der OpenVPN-Server und Seite B (LanB) der OpenVPN-Client. Zu den erreichbaren Netzwerken gehört jeweils auch das Netzwerk des WAN-Interfaces (also WanA und WanB =/= StS-Tunnel-Interfaces). Die Verbindung wird mit dem Konfigurationsmodus "Gemeinsamer Schlüssel" aufgebaut. Alle erforderlichen Routen werden auf beiden Seiten automatisch beim Verbindungsaufbau generiert und sind zutreffend. Ebenso generiert OPNsense mit der Konfiguration des OpenVPN-Servers/-Clients das zugehörige Gateway und ergänzt beim Verbindungsaufbau die IP des gegenüberliegenden Tunnelendpunktes als Gateway-Adresse.
Beide OPNsense sind zugleich das jeweilige generelle Gateway für diese beiden Netzwerke. Der gesamte nach außen gerichtete Traffic verhält sich auf beiden Gateways ordnungs- und erwartungsgemäß.
Von Seite B aus kann auf alle Clients/Server im LanA zugegriffen werden - z.B. Client B1 ruft eine von Server A1 bereitgestellte Webseite auf. traceroute (oder tracert) und ping funktionieren gleichfalls in dieser Richtung prompt und erwartungsgemäß; dabei ist sehr schön zu sehen, dass das Routing über den entfernten Tunnelendpunkt auf Seite A läuft.
Hingegen funktioniert das in der entgegen Richtung nicht. Wird mittels traceroute (oder tracert) beispielsweise von Server A1 aus der Client B1 aufgerufen, ist in der Ausgabe als erster Hop die interne Adresse des Gateways angegeben. Bei den anderen 29 Hop sind es nur Sternchen als Ausgabe. Laut "Livestatus" gibt es keine Blockierungen - das dürfte auch nicht sein, weil der gesamte relevante Verkehr für die Tunnelverbindung mit entsprechenden Rules freigegeben ist. Bei "Status" bzw. "Sitzung" finden sich als korrespondierende Einträge zum Ping etc. "NO_TRAFFIC:SINGLE" für den Eingang und "SINGLE:NO_TRAFFIC" für den Ausgang. Laut "Livestatus" / "Status" / "Sitzung" auf der OPNsense Seite B ist dort kein korrespondierender Traffic ersichtlich, was in der Gesamtschau, dass der zweite Hop nur mit Sternchen angegeben wird, plausibel und erwartungsgemäß erscheint.
Das Kuriose ist aber, wenn in der WebUI der OPNsense auf Seite A eine Diagnose mit "Ping" oder "Routenverfolgung" gestartet wird, dann ist alles von Seite B ordnungsgemäß erreichbar. Unter anderem wird dann auch der Tunnelendpunkt von Seite B als erster Hop angegeben. So soll es ja aus dem Inneren der OPNsense heraus auch sein. Zu der Kuriosität gehört auch, dass ich über deren WAN-IP die OPNsense WebUI der Seite B von Seite A aus aufrufen bzw. per ping / traceroute erreichen kann.
Somit scheint das Gateway von Seite A irgendwie nicht (immer) den "Ausgang" in Richtung Tunnel zu finden, wenn der Datenverkehr seinen Ursprung im LanA hat. Das ändert sich auch dann nicht, wenn eine Rule in der Firewall eingetragen wird, die ausdrücklich den ein- und/oder ausgehenden Verkehr von LanA nach LanB freigibt. An den Routing- und Firewall-Regeln kann es daher eigentlich nicht liegen, weil der Verkehr von LanA nach LanB grundsätzlich funktioniert, wie die Kuriosität zeigt.
Wie kann ich die OPNsense Seite A animieren die Kommunikation aus LanA ins LanB zu routen, wenn ein Ziel in LanB angesprochen werden soll?
Vielen Dank für Euren Input im Voraus und viele Grüße
HansDampf06
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 52368529860
Url: https://administrator.de/forum/opnsense-openvpn-site-to-site-tunnel-serverseite-kann-auf-clientseite-nicht-zugreifen-52368529860.html
Ausgedruckt am: 21.12.2024 um 17:12 Uhr
5 Kommentare
Neuester Kommentar
Nur mal nebenbei OT gefragt: Gibt es einen tieferen Grund warum du heutzutage noch das wenig performante und wenig skalierende OpenVPN verwendest und nicht IPsec oder Wireguard?
Damit erreichst du nicht nur eine deutlich bessere VPN Performance sondern es würde auch deinen o.a. Thread obsolet machen. Es wäre die intelligentere VPN Wahl gewesen.
Das o.a. Verhalten sieht danach aus als ob irgendwo eine entsprechende Regel fehlt. Vermutlich auf dem Tunnel Interface. Wegen fehlender Daten aber leider nur geraten.
Bedenke auch wenn du Winblows Endgeräte im remoten B Netz pingst das deren lokale Firewall per Default ICMP (Ping) immer blockt. Auch generell den Zugriff aus fremden IP Netzen. Hier muss also die lokale Firewall immer entsprechend angepasst werden.
https://www.windowspro.de/wolfgang-sommergut/ping-windows-10-erlauben-gu ...
Damit erreichst du nicht nur eine deutlich bessere VPN Performance sondern es würde auch deinen o.a. Thread obsolet machen. Es wäre die intelligentere VPN Wahl gewesen.
Das o.a. Verhalten sieht danach aus als ob irgendwo eine entsprechende Regel fehlt. Vermutlich auf dem Tunnel Interface. Wegen fehlender Daten aber leider nur geraten.
Bedenke auch wenn du Winblows Endgeräte im remoten B Netz pingst das deren lokale Firewall per Default ICMP (Ping) immer blockt. Auch generell den Zugriff aus fremden IP Netzen. Hier muss also die lokale Firewall immer entsprechend angepasst werden.
https://www.windowspro.de/wolfgang-sommergut/ping-windows-10-erlauben-gu ...
Wenn es das war bitte nicht vergessen deinen Thread hier als erledigt zu markieren!
keine Verbindung zwischen den beiden IPsec-Endpunkten aufbauen.
Mmmmhhh..klappt immer auf Mausklick und deutlich einfacher als OpenVPN.Guckst du hier für diverse Beispiele:
IPsec VPN Praxis mit Standort Vernetzung Cisco, Mikrotik, pfSense, FritzBox u.a
Wireshark ist gewiss zum gegebenen Zeitpunkt einen Seitenblick wert.
Nur einen kalten "Seitenblick" für den besten Freund des Netzwerk Admins...?! Wie gemein! dem üblicherweise bei Firewalls anzutreffenden entsprechen
Was wäre denn für dich "üblicherweise"?? Du kannst hier natürlich keine Äpfel (Zonen basierte FW Konfigs) mit Birnen (Interface basierte FW Konfigs) vergleichen geschweige denn portieren.Da die "Sensen" Interface basierende Rulesets haben kann man die in der Regel immer auch mit entsprechend gleichen Rulesets vergleichen und auch portieren.
dass eine blockierende Ausgangsregel...
Kein verantwortungsvoller Netzwerk Admin konfiguriert Outbound Regeln. Die pfSense hat sowas z.B. gar nicht. Nur wenn es partout nicht anders geht und das kommt so gut wie nie vor. Man will ja ungewollten oder bösen Traffic niemals schon IN einer Firewall haben. Ggf. stimmt hier etwas grundsätzlich mit deiner Regel Logik nicht was jetzt nicht böse gemeint ist?!