birdyb
Goto Top

PfSense: IPSec mit zusätzlichem Subnet von OpenVPN-Verbindung

Hallo zusammen,

ich habe da ein kleines Problem mit meiner pfSense und brauche mal wieder einen schlauen Rat:

Folgendes Szenario:

Ich habe Zuhause einen DD-WRT-Router (Netzwerk 10.0.1.0/24) und im Rechenzentrum eine virtuelle pfSense (Netzwerk 10.0.2.0/24). Beide Netze sind über eine OpenVPN-Verbindung verbunden und die Verbindung funktioniert einwandfrei.

Was möchte ich erreichen?

Ich möchte mich per IPSec mit meiner pfSense im RZ verbinden und von dort auf die Rechner hinter der pfSense zugreifen(das funktioniert bereits), hierzu bin ich nach dieser Anleitung: https://doc.pfsense.org/index.php/Mobile_IPsec_on_2.0 vorgegangen.

Weiterhin würde ich über diese Verbindung gerne auch auf meinen Server zuhause zugreifen. (Funktioniert nicht)

Was habe ich bereits probiert?

Gemäß dieser Anleitung: https://doc.pfsense.org/index.php/IPsec_with_Multiple_Subnets habe ich zunächst eine weitere Phase2 angelegt und 10.0.1.0/24 als local net angegeben. Danach habe ich (zumindest mit meinem iPhone) garkeine IPSec-Verbindung mehr aufbauen können.

Alternativ habe ich probiert, als LAN-Netz 10.0.0.0/22 gemäß der gleichen Anleitung wie oben anzugeben. Jetzt funktioniert die IPSec-Verbindung wieder, aber ich kann trotzdem meinen Server zuhause nicht erreichen.

In der Firewall sind derzeit sowohl im OpenVPN als auch in IPSsec alle Verbindungen erlaubt.

Muss ich noch zusätzliche Routing-Einstellungen vornehmen? Wo sollte ich bei der Problemlösung ansetzen?


Danke für eure Hilfe!


Beste Grüße!


Berthold

P.S.: Ergänzend kann ich noch sagen, dass auch mein OSX Client keine Verbindung mehr herstellt, wenn ich die zweite Phase2 konfiguriere.

Content-Key: 256324

Url: https://administrator.de/contentid/256324

Printed on: April 24, 2024 at 07:04 o'clock

Member: aqui
aqui Dec 01, 2014 updated at 08:01:45 (UTC)
Goto Top
Hast du es mal nach dieser Anleitung probiert:
IPsec VPNs einrichten mit Cisco, Mikrotik, pfSense Firewall, FritzBox, Smartphone sowie Shrew Client Software
Damit funktioniert es !
Nur mal nebenbei: Wieso gibst du im 10er Netz einmal eine /24er Maske an und einmal ein /22 ?? Da produzierst du dir ja einen Masken Mismatch der böse Folgen haben kann. Zielführend ist das nicht !
Das du deinen Server nicht erreichen kannst liegt zu 98% daran das du mit an Sicherheit grenzender Wahrscheinlichkeit vergessen hast das interne OVPN IP Netzwerk im IPsec Routing anzugeben.
Aber mal ganz abgesehen davon...

Du solltest dich auch mal ganz generell fragen was der Unsinn soll mit 2 VPN Protokollen, die verschiedener kaum sein können, zu arbeiten. Wozu das ??
Wenn die pfSense im RZ schon OpenVPN spricht, warum nimmst du dann nicht ganz einfach einen OpenVPN Client (Bei OS-X ist das "Tunnelblick") und connectest dich damit auf die pfSense. Wär doch viel eleganter und sinnvoller und läge auf der Hand !
Wozu also der eigentlich überflüssige Ausflug auf IPsec nach dem Motto warum einfach machen wenn es umständlich und kompliziert auch geht ??
Member: BirdyB
BirdyB Dec 01, 2014 updated at 18:18:29 (UTC)
Goto Top
Zitat von @aqui:

Hast du es mal nach dieser Anleitung probiert:
IPsec VPNs einrichten mit Cisco, Mikrotik, pfSense Firewall, FritzBox, Smartphone sowie Shrew Client Software
Damit funktioniert es !

Werde ich dann jetzt tun. (Allerdings funktioniert ja die normale Einwahl, lediglich der Zugriff auf das OpenVPN-Netz geht nicht. Dieses Szenario wird aber in deiner Anleitung nicht berücksichtigt.)

Nur mal nebenbei: Wieso gibst du im 10er Netz einmal eine /24er Maske an und einmal ein /22 ?? Da produzierst du dir ja einen
Masken Mismatch der böse Folgen haben kann. Zielführend ist das nicht !

Das war der offizielle Vorschlag aus den Anleitungen von oben. Das das keine besonders gute Sache ist war mir schon klar.

Das du deinen Server nicht erreichen kannst liegt zu 98% daran das du mit an Sicherheit grenzender Wahrscheinlichkeit vergessen
hast das interne OVPN IP Netzwerk im IPsec Routing anzugeben.
Aber mal ganz abgesehen davon...

Sowas dachte ich mir schon, muss ich die Routen dazu manuell eintragen, bzw. wo trage ich die Routen am besten ein?

Du solltest dich auch mal ganz generell fragen was der Unsinn soll mit 2 VPN Protokollen, die verschiedener kaum sein können,
zu arbeiten. Wozu das ??
Wenn die pfSense im RZ schon OpenVPN spricht, warum nimmst du dann nicht ganz einfach einen OpenVPN Client (Bei OS-X ist das
"Tunnelblick") und connectest dich damit auf die pfSense. Wär doch viel eleganter und sinnvoller und läge auf
der Hand !
Wozu also der eigentlich überflüssige Ausflug auf IPsec nach dem Motto warum einfach machen wenn es umständlich und
kompliziert auch geht ??

Ich wollte IPSec verwenden, weil es auch von iOS nativ unterstützt wird und weil ich bereits mehrere VPN-Verbindungen auf meinem Macbook angelegt habe und ich hätte es praktisch gefunden, nur einen VPN-Client verwenden zu müssen.

Beste Grüße


Berthold
Member: aqui
aqui Dec 01, 2014 at 18:35:51 (UTC)
Goto Top
Allerdings funktioniert ja die normale Einwahl, lediglich der Zugriff auf das OpenVPN-Netz geht nicht
Klar, da fehlt wie immer die statische Route und die Distribution auf den IPsec Client. Im Tutorial (IPsec) steht wie es geht)
Traceroute (tracert) und Pathping sind hier wie immer deine besten Freunde. Da wo es nicht mehr weitergeht ist der Fehler !
Sieh immer in die Routing Tabelle des Clients (route print (Winblows) und netstat OS-X) ob die IP Netze richtig propagiert sind vom VPN Server auf den Client. Achte ggf. auch auf die Firewall Settings das diese netze nicht blockiert werden !
Das war der offizielle Vorschlag aus den Anleitungen von oben.
Achte auf deinen Netze und vermeide inkonsistente und damit falsche Masken. Das macht nur sinn wenn du Summarizen willst bei einer Maske. Z.B. wenn du mehrere /24er Netze hinter dem VPN hast kannst du z.B. eine 16er Maske auf den Client propagieren. Der routet dann alles kleiner der 16er Maske so in den Tunnel ohne das du das für jedes einzelne /24er netz einzeln eintragen müsstest.
Da und nur da macht sowas Sinn.
Ich wollte IPSec verwenden, weil es auch von iOS nativ unterstützt wird
Wäre es dann nicht auch sinnvoll die Standortkopplung mit IPsec zu machen ? Dann wäre alles einheitlich ?!
OK, deine Lösung ist nicht die beste aber sie funktioniert natürlich auch.
muss ich die Routen dazu manuell eintragen, bzw. wo trage ich die Routen am besten ein?
Du kannst auch dynmaisch routen mit RIP. Der Aufwand lohnt aber nicht schon gar nicht wenn du nichts von dynmaischen Routen verstehst.
Normal richtet man sie immer zenral auf dem Server ein damit der diese Routen an den einwählenden Client distribuiert.
Member: BirdyB
BirdyB Dec 01, 2014 at 19:03:03 (UTC)
Goto Top
Zur Standortkuppelung:
Diese hatte ich schon vor längerem eingerichtet. Leider kommt mein DD-WRT Zuhause mit einfachem IPSec nicht so richtig zurecht. (Zumindest habe ich keine genaueren Angaben dazu gefunden) - Daher dachte ich mir, ich behalte den Teil, der funktioniert erstmal so bei.

Zum Routing:

mit RIP hatte ich leider noch nicht so richtig das Vergnügen. Laut netstat -r werden sowohl die Verbindungen zu 10.0.1.0/24 als auch zu 10.0.2.0/24 über die 10.0.15.1/24 (IPSec-Netz) geroutet. Für das OpenVPN gibt es noch das 10.0.8.0/24 Netz, dieses taucht allerdings in der Ausgabe nicht auf. Müsste ich dann dafür auch noch eine Phase2 anlegen?

Und wie richte ich in der pfSense die Routen so ein, dass diese per IPSec distribuiert werden? In den IPSec-Einstellungen habe ich bisher nichts entsprechendes finden können.

Danke!
Member: aqui
aqui Dec 03, 2014 at 08:35:18 (UTC)
Goto Top
Leider kommt mein DD-WRT Zuhause mit einfachem IPSec nicht so richtig zurecht. (Zumindest habe ich keine genaueren Angaben dazu gefunden)
Kein Wunder ! DD-WRT supportet kein IPsec. Es kann einzig und allein Passthrough machen für IPsec also IPsec nur einfach durchreichen, nicht aber selber terminieren als VPN !
mit RIP hatte ich leider noch nicht so richtig das Vergnügen.
Besser auch kein RIP verwenden sondern immer RIPv2 denn altes RIP kann kein Subnetting !
Für das OpenVPN gibt es noch das 10.0.8.0/24 Netz, dieses taucht allerdings in der Ausgabe nicht auf
Nein, das ist nur relevant wenn auch OVPN Clients diese Netze benutzen sollen oder müssen. Das 10er Netz ist das interne OVPN Netz, quasi das was in den Tunnels verwendet wird. Für die OVPN Clients ist das deren aktive IP. Bei einer Site to Site Kopplung ist das nicht unbedingt wichtig, da zählen nur die lokalen IP Netze. Es kann aber nicht schaden auch das interne OVPN netz mit aufzunehmen, denn dann bist du immer sicher was die erreichbarkeit angeht !
Und wie richte ich in der pfSense die Routen so ein, dass diese per IPSec distribuiert werden?
Diese werden bei den Teilnehmeren immer als local LAN und remote LAN (oder IP) definiert. Beim IPsec Handshaking werden die dann entsprechend ausgetauscht und in die jeweilige Route Table übernommen.
Member: BirdyB
BirdyB Dec 03, 2014 updated at 10:22:41 (UTC)
Goto Top
Hier sind jetzt mal meine Einstellungen, vielleicht bin ich ja auch einfach nur irgendwie blind!
Danke schonmal @aqui für die Hilfe!
825edead4e87d01b03588c56dee934ff

e4353226dca9f8cd59ddb911add7ee14

adc426035d8a190f431708a4ce14007b

d4674dec3aa6fb78404dae8002b44574

Edit:

ein Bild vergessen:

7c63f6e808e4f14b42b72b8b7394bc84
Member: aqui
aqui Dec 03, 2014, updated at Dec 06, 2014 at 17:20:13 (UTC)
Goto Top
Könntest du nochmal die Route Table der pfSense posten bei aktiver VPN Verbindung ?
(Diagnostics -> Route)

Außerdem kannst du schon unter "Tunnels" oben sehen das du keinerlei Local Networks eingetragen hast...da liegt der erste Fehler !
Member: BirdyB
BirdyB Dec 06, 2014 at 09:22:25 (UTC)
Goto Top
Hallo @aqui,

hier ist noch der Screenshot:

07ddef3b45166233f26d0af9e84cd9fb

Wieso habe ich keine Local Networks eingetragen? Wenn ich LAN auswähle, wird das Feld direkt ausgegraut, daher gehe ich davon aus, dass das Netz des LAN-Interfaces verwendet wird.

Beste Grüße!


Berthold
Member: aqui
aqui Dec 06, 2014, updated at Dec 07, 2014 at 09:00:34 (UTC)
Goto Top
.
Member: BirdyB
BirdyB Dec 06, 2014 at 18:23:30 (UTC)
Goto Top
hm, ich habe aber kein 192.168.0.0/24 Netz...
ich habe nur 10.0.1.0/24 zuhause, 10.0.2.0/24 im RZ und 10.0.8.0/24 für OVPN und 10.0.15.0/24 für IPSec...
Warum soll ich jetzt eine Route für ein 192.168.-Netz eintragen?
Member: aqui
aqui Dec 07, 2014 at 09:00:15 (UTC)
Goto Top
Sorry, vergessen....mit einem anderen Thread verwechselt.....
Member: BirdyB
BirdyB Dec 07, 2014 at 11:57:13 (UTC)
Goto Top
Kein Thema,

Übrigens: das ipush route 10.0.15.0 255.255.255.0 habe ich im OVPN-Server schon für die Client-Spezifischen-Einstellungen eingetragen.
Member: aqui
aqui Dec 07, 2014 at 13:03:05 (UTC)
Goto Top
Das 15er Subnetz wird ja auch sauber in der Routing Tabelle angezeit ! Das ist also OK und erreichbar.
Wird auf der anderen Seite das Netz dort entsprechend auch angezeigt ?
Member: BirdyB
BirdyB Dec 29, 2014 at 21:32:27 (UTC)
Goto Top
Also ich verzweifel jetzt langsam an diesem Problem...

Ich habe es jetzt auch mit OpenVPN probiert, um die Probleme zwischen verschiedenen VPNs zu vermeiden.
Auf dem anderen Router habe ich Firewall und Routen gecheckt und korrigiert. In der OVPN-Config nochmal explizit client-to-client eingetragen und ich bekomme immer noch keine Verbindung.

Hat noch jemand eine Idee?
Member: aqui
Solution aqui Dec 30, 2014, updated at Jan 03, 2015 at 12:32:53 (UTC)
Goto Top
Hier in einem Testaufbau funktioniert es wunderbar. Da hast du irgendwo noch einen Konfig Kincken drin bei dir !!
Member: BirdyB
BirdyB Jan 03, 2015 at 12:32:47 (UTC)
Goto Top
Hatte es selbst verbockt, habe aus unerfindlichen Gründen die Netze auch in den clientspezifischen Einstellungen per iroute eingetragen... Macht natürlich garkeinen Sinn!

Jetzt läufts, Danke für die Hilfe!


Beste (Scham erfüllte) Grüße!


Berthold