Hallo!
Eigentlich bin ich schon länger opnsense Benutzer - in der Firma wie auch Privat. Bin bisher immer ganz gut zu Streiche gekommen dank Dokumentationen, Forum und vermutlich mehr Glück als Verstand ;) Aber jetzt beiße ich mir seit ein paar Tagen die Zähne aus und komme nicht wirklich weiter und brauche Hilfe.
Ziel: OpenVPN Verbindung Site-to-Site von zwei Firmenstandorten.
Umsetzung: Brav nach Dokumentation: https://docs.opnsense.org/manual/how-tos/sslvpn_s2s.html
Konkret: Tunnel Network, Local Network und Remote Network eingetragen, sowie FW-Regeln für WAN (Server) und OpenVPN (Server&Client) für das jeweilig andere Lokale Netzwerk gesetzt.
Server läuft - Client verbindet sich: läuft!
Aus dem clientseitigen Netzwerk hab ich prima Zugriff auf das serverseitige Netzwerk. Andersrum aber nicht.. ich kann von der serverseitigen opnsense die clientseitige LAN-Adresse pingen - aber ins LAN Netzwerk komme ich nicht. Live-View auf die FW-Logs geben aber bekannt, das die Pakete ankommen und erlaubt sind. Aber ich kriege keine Antwort.
Was kann ich tun? Welche Informationen kann ich noch bereitstellen?
Schöne Grüße!
Ich tippe mal auf Routing Probleme...
Wirf doch mal etwas mit IPs und nem kleiner Netzwerkplan oder einer etwas detaillierten Beschreibung umher...
Vielleicht wird es dann etwas durchsichtiger...
Ist die FW der einzige Router im Netzwerk? Oder haben die Geräte im Clientnetz noch einen weiteren Router dazwischen?
Ich würde versuchen Stück für Stück vorzugehen... Da der tunnel schonmals steht, ist dies die halbe Miete...
Ich denke jedoch das hier an den Einstellungen des VPN Server/Clients liegen könnte...
Kannst du diese bitte mal posten?
Können die Geräte der Clientseite die ServerFW pingen? Stimmt hier vor allem die Route?
Gesendet von meinem LG-H815 mit Tapatalk
Guten Morgen!
Dann werf ich mal mit einem Netzwerkplan:
+--------------------------+ +----------------------+ +------------------------------+
|client: opnsense | |client: modem/router | |server: opnsense |
|LAN: 10.0.21.1/24 | |LAN: 192.168.0.1/24 | |LAN: 10.0.20.1/24 |
|Tunnel: 10.0.52.0/24 +----+ +----------------+Tunnel: 10.0.52.0/24 |
| | | | | |
|WAN (DHCP): 192.168.0.5 | |WAN: DS-LITE | |WAN (PPPoE): Static Public |
+--------------------------+ +----------------------+ +------------------------------+
Die VPN-Einstellungen für den Server sind:
Protocol: UDP
Device Mode: tun
Interface: WAN
Local port: 1196
IPv4 Tunnel Network: 10.0.52.0/24
IPv4 Local Network: 10.0.20.0/24
IPv4 Remote Network: 10.0.21.0/24
Entsprechende FW-Rule für WAN besteht: IPV4 UDP; Source: any:*; Destination: any:1196
Entsprechende FW-Rule für OpenVPN besteht: IPV4*; Source: 10.0.21.0/24:*; Destination: any:*
Die VPN-Einstellungen für den Client sind:
Protocol: UDP
Device Mode: tun
Interface: WAN
Server host or address: public-ip-of-server
Server port: 1196
IPv4 Tunnel Network: 10.0.52.0/24
IPv4 Remote Network: 10.0.20.0/24
Entsprechende FW-Rules für OpenVPN Schnittstelle besteht: IPV4*; Source: 10.0.20.0/24:*; Destination: any:*
- Ich kann serverseitig die ClientFW (LAN) pingen - hab aber keinen Zugriff auf das WebInterface oder clientseitiges LAN
- Ich kann clientseitig die ServerFW (LAN) pingen - und habe Zugriff auf alle Dienste/IPs im serverseitigen LAN
Block private/bogon ist bei beiden opnsense WANs deaktiviert.
Danke für den Plan. Das macht alles etwas durchsichtiger...
Es fehlt die Regel, damit die Server auch auf die Clientseite zugreifen dürfen.
Sprich auf der ServerFW unter den LAN Interface eine Regel erstellen mit "Source:10.0.20.0/24 Destination: 10.0.21.0/24".
Als kleine Optimierung würde ich vorschlagen den Tunnel nicht mit einem /24 Netz sondern mit einem /30 Netz zu "betreiben".
Ebenfalls würde ich bei der ClientFW den "Remote Network" rauslöschen. Das bekommt der Client dann via Push vom Server. So muss man im Änderungsfall nur eine Config anpassen ;)
Wenn die ServerFW zudem direkt im Öffentlichen Netzwerk hängt, dann würde ich den Private/Bogon Block wieder aktivieren.
Danke für deine Rückmeldung.
Die serverseitige FW-Regel für das LAN hatte ich vergessen an zu geben. Die ist zur Zeit mit "Source: LANnet:* Destination: any:*" sehr freizügig.
Gerade habe ich keinen Zugriff auf den Client, aber ich werde den Tunnel heute Abend mal auf /30 verkleinern und das "Remote Network" löschen. "Private/Bogon" ist bereits wieder für öffentliche WAN aktiviert.
Gerne doch ;)
Noch etwas: Der Server Modus des OpenVPN Servers... Ist dieser auf Peer-to-Peer?
Wenn es nach dem ändern noch immer nicht funktioniert, dann wäre mal ein Tracert von einem Gerät auf Server Seite zu einem Gerät auf Client Seite nicht schlecht...
Vielleicht sieht man dann etwas mehr... Theoretisch sollte irgendwie was kommen mit
1 ServerFW
2 TunnelIP der ClientFW
3 Gerät jenes du ansprichst
Ich hatte gelegentlich ein ähnliches Problem.
Mit hat es geholfen, dass TUnnelnetzwerk einmal abzuändern, zu speichern und dann wieder das richtige einzutragen.
Da fehlte glaube ich manchmal eine automatisch erstellte Route :)
Hey, danke für euren ganzen Input.
Ich hab hier weiterprobiert und um etwaige voherige Fehler zu vermeiden einen neuen Server und einen neuen Client aufgesetzt. Dabei hab ich jetzt ein neues Tunnel-Netzwerk verwendet (10.0.55.0/30) und einen anderen Port (1197). Die restlichen Einstellungen hab ich wieder wie gehabt aus der Dokumentation und entsprechend angepasst.
Nichts desto Trotz.. es geht noch immer nicht :'( Von der Clientseite komme ich überall hin, von der Serverseite aus kann ich max. die LAN-Schnittstelle der ClientFW pingen. Danach ist (opn)Sense.
QuoteNoch etwas: Der Server Modus des OpenVPN Servers... Ist dieser auf Peer-to-Peer?
Ja, der steht auf Peer-to-Peer (Shared Keys) - der Client auch
QuoteEbenfalls würde ich bei der ClientFW den "Remote Network" rauslöschen.
Wenn ich das mache, dann kann ich weder von Server- noch von Clientseite aus etwas erreichen. Trage ich das "Remote Network" ein klappt es zumindest mal von der Clientseite aus.
QuoteDa fehlte glaube ich manchmal eine automatisch erstellte Route
Über System > Routes > Status bekomme ich angezeigt:
ipv4 10.0.21.0/24 10.0.55.2 (ServerFW-Seite)
ipv4 10.0.20.0/24 10.0.55.1 (ClientFW-Seite)
tracert von einem Client auf der Serverseite aus ergibt
tracert 10.0.21.10
Routenverfolgung zu 10.0.21.10 über maximal 30 Hops
1 <1 ms <1 ms <1 ms 10.0.20.1
2 46 ms 43 ms 44 ms 10.0.55.2
3 * * * Zeitüberschreitung der Anforderung.
Sieht aus als blockt die ClientFW was - doch die FW-Regeln sind es nicht. Die LiveView zeigt
lan Mar 5 20:45:51 10.0.20.105 10.0.21.10 icmp let out anything from firewall host itself
... ich versteh es nicht :-[
Edit: Korrektur was wie erreichbar ist.
Sehr mysteriös... Bin so langsam auch mit meinem Latein am Ende....
Du erreicht mit dem tracert ja die 10.0.55.2 also die OPNsense der anderen Seite.
Es blockiert eher das Gerät was dann danach kommt...
Auf deinen Clients und ist keine (lokale) Firewall aktiv die irgendwas blockiert oder ähnliches?
Das Standardgateway ist bei allen Geräten immer die jeweilige OPNsense?
Boar... neh - .. ich Depperle. Das war's..
Ich hab, um es mir "einfach zu machen" (haha!) meinen Testprobanden (Win-Client und einem NAS) jeweils die zweite Schnittstelle konfiguriert und ein Parallel-Netzwerk aufgebaut. Dabei hab ich vergessen den Standard-Gateway anzupassen (und bei der Win-Dose die lokale FW angelassen/nicht konfiguriert). Die Clients hinter der ClientFW haben immer an das falsche Netzwerk (oder gar nicht) geantwortet.. Kein Wunder krieg ich auf Serverseite kein Feedback.
superwinni2: danke! 8)
Hahaha ;D Na wie gut dass dieser Fehler nicht nur mir passiert ist ::)
Ich war zwischendurch immer wieder am überlegen dies zu fragen aber hab mir dann gedacht "Ach da ist nirgendwo ein zweites Netzwerk erwähnt... Da wird schon alles so passen ;D
Ente Gut - Alles Gut ;)
Gerne! 8)
Zeig mir Mal deine Firewall regeln von der Client Seite und der Serverseite
Sowohl von den Lan als auch OpenVPN Schnittstellen :)
Hi lfirefall1243
Fehler ist doch gefunden?!?
Zudem sind alle Regeln von ihm Oben zu finden...
Firewall lässt alles entsprechend zu ;)
Bei Serverseite:
LAN: LAN Netzwerk zu Any:Any
OpenVPN: 10.0.21.0/24 zu Any:Any
Clientseite:
LAN: unbekannt (Ich vermute jedoch auch eine Any:Any Regel)
OpenVPN: 10.0.20.0/24 zu Any:Any
Quote from: superwinni2 on March 06, 2020, 07:00:36 AM
Hi lfirefall1243
Fehler ist doch gefunden?!?
Zudem sind alle Regeln von ihm Oben zu finden...
Firewall lässt alles entsprechend zu ;)
Bei Serverseite:
LAN: LAN Netzwerk zu Any:Any
OpenVPN: 10.0.21.0/24 zu Any:Any
Clientseite:
LAN: unbekannt (Ich vermute jedoch auch eine Any:Any Regel)
OpenVPN: 10.0.20.0/24 zu Any:Any
Ups sorry !
Habe ich wohl um die Zeit überlesen :)
Kein Problem ;)
Habe es trotz allem (für die Leser aus der Zukunft) beantwortet ;D
Nun auf in den Kampf und ab zur Kaffeemaschine um die Uhrzeit 8)
Sorry - ich muss das Thema doch nochmal erwärmen. Ich hab mich leider zu früh gefreut denn es funktioniert immer (oder wieder?!) nicht. Ich muss die Tests gerade immer auf den Abend verschieben wenn ich bei mir daheim in meinem Testaufbau ungehindert werkeln kann.. und das geht leider auch nicht immer.
Ich hab jetzt von der Clientseite aus meinen Faux-Pas bereinigt und beide Test-Clients eindeutig in das eine VPN-Clientseitige LAN gehängt (Default Gateway: 10.0.21.1).
Ich kann jetzt auch von beiden Seiten aus (Server/Client) beliebige IPs pingen - das ging vorher schon mal nicht.
Ich kann clientseitig einen erfolgreichen tracert ausführen - ein serverseitiger tracert ergibt aber wieder/immernoch:
1 <1 ms <1 ms <1 ms 10.0.20.1
2 47 ms 51 ms 47 ms 10.0.55.2
3 * * * Zeitüberschreitung der Anforderung.
An den Firewall-Regeln hat sich nichts geändert. Auch an den Interface-Settings oder VPN-Server/Client Einstellung nicht.
Hat das vielleicht was mit der clientseitigen OPNSense, die hinter dem DS-Lite/NAT meiner UnityMedia-Box hängt zu tun?
Klingt vielleicht nach einer DAU-Frage, doch ich weiß nicht mehr was mir sonst noch einfallen soll, aber das meine beiden LAN-Interfaces jeweils mit /24 maskiert sind spielt doch keine Rolle.. oder?! Irgendwas ist grundlegend falsch und ich finde es nicht.. ::)
Bin um jede Hilfe dankbar.
Wisst ihr was?! Das Problem ist nicht OPNSense - oder OpenVPN. Das Problem hier bin ich... >:(
Hier läuft alles wie es soll. Wenn man es denn auch so konfiguriert wie es sein soll und nicht ein dummen Quatsch macht.
Danke ;D
Na wenn du den Layer8 Fehler gefunden hast, dann ist ja gut ;)