Gelöst - IPSec - Natten der IP Adresse

Started by LHBL2003, October 23, 2020, 05:44:14 PM

Previous topic - Next topic
October 23, 2020, 05:44:14 PM Last Edit: May 05, 2021, 12:58:17 PM by LHBL2003
Hallo,

Meine Partnerstelle stellt mir 3 Netze zur Verfügung:

10.ABC.0.0/13
10.DEF.0.0/13
10.GHI.0.0/13

Allerdings definiert er für mich nur die 10.xxx.xxy.68/32

Wenn mein PC hinter der Firewall die IP Adresse 10.xxx.xxy.68 besitzt. Dann wird der Ping über die IPSec Schnittstelle übertragen. Soweit kein problem.

Ändere ich die IP Adresse z.B. auf 10.xxx.xxy.67 ab, so wird der Ping dircht mehr durchgeführt, was ja verständlich ist.

Daher wollte ich über NAT z.B. mit Eins-zu-Eins eine Übersetzung der Quell IP Adresse vornehmen.
Indem ich prüfe ob z.B. die IP 10.ABC.1.22 als Ziel angegeben wurde.
Die Quell IP adresse wird daraufhin auch von 10.xxx.xxy.67 auf 10.xxx.xxy.68 abgeändert. Allerdings will die Firewall das Paket nun aus dem WAN Port senden und nicht über die IPSec Verbindung.

Höchstwarscheinlich liegt es daran, weil ich die Umsetung auf der WAN Schnittstelle durchführe.
Nur wie kann man im OpnSense sagen, dass für eintreffende LAN Pakete erst die Quelladresse geändert werden soll, damit diese dann an IPsec und nicht an den WAN Port übergeben werden.

Und Ja, ich bekomme leider nur die eine IP Adresse von der gegenstelle für mein Netz.

Gruß und Vielen Dank für Infos

Du kannst die IPsec Verbindung auch route-based aufbauen. Dazu "Install policy" deaktivieren.

Nun solltest Du für diese Verbindung ein Interface "assignen" können. Auf diesem kannst Du einen Gateway erstellen und Routen anlegen, sowie NAT betreiben.
,,The S in IoT stands for Security!" :)

Nat geht nicht mit route based, Limitierung von FreeBSD mit strongswan

Quote from: mimugmail on October 23, 2020, 06:29:04 PM
Nat geht nicht mit route based, Limitierung von FreeBSD mit strongswan

Wieder was gelernt :)
,,The S in IoT stands for Security!" :)


So wie ich das verstehe ist das verbleidende Problem nun:
QuoteRe-opening bug: It is currently not possible to simultanously have Routed IPsec with NAT and Policy IPsec.

Wenn er aber nur Route based mit NAT machen will, ohne Mix? Oder ist dieser "Fix" bisher nicht in OPNsense angekommen?
,,The S in IoT stands for Security!" :)

Kein Fix, wäre nur tuneable setzen, mehr braucht's nicht

Danke für die Ideengänge. Leider habe ich erst Montag das System parat um die genannten Schlagwörter zu erproben.

Scheinbar sollte ich mein Problem besser beschreiben. Daher habe ich mal eine kleine Skizze gemacht wie ich aktuell zu einem Erfolg gekommen bin, um zumindest mit einem Rechner zu kommunizieren. Siehe im Anhang.

Mein Partner hat mir drei Netzwerksegmente Freigegeben indem sich jeweils mehrere Rechner befinden die für mich freigegebene sind.

Für unser Netz hat er die IP Adresse 10.xxx.xxx.68/32 festgelegt und kein Segment wie z.B. 10.xxx.xxx.0/24
Somit habe ich im Normalfall ja nur die Möglichkeit über einen Rechner mit dem Netz zu kommunizieren. Im Beispiel Bild sieht man wie es aktuell funktioniert.

Wenn ich nun mit opnSense ein Ping auslöse, dann wird dieser nicht via ipSec übertragen sondern geht über das WAN Interface raus. Was ja verständlich ist, denn die Firewall selbst hat ja am LAN Anschluss zum Test die 10.xxx.xxx.254

Änder ich die LAN Adresse der Firewall auf 10.xxx.xxx.68/24 so kann ich mit der FW über einen Ping auslösen welcher dann auch über IPSec raus geht und nicht über WAN.

Trage ich am Rechner nun als Gateway die 10.xxx.xxx.68 win und vergebe den Rechner z.B. die 10.xxx.xxx.67 als IP so kann ich natürlich mit dem Rechner nicht ins IPSec Netz pinnen, da er die Ping Anforderung ins WAN Netz schick, denn in Phase 2 wurde die IP Adresse nicht festgelegt.

So normalerweise haben die Rechner in meinem z.B. Netz 10.yyy.yyy.100 und die Firewall somit 10.yyy.yyy.254. Sie haben also eigentlich nichts mit der Festlegung durch den Partner zu tun.

Mir ist es aktuell egal ob ich für die Rechner und der Firewall 10.xxx.xxx.0 oder 10.yyy.yyy.0 verwende. Da das Netz mit den Rechnern gerade aufgebaut wird. Nur ist eins Fakt. Wir werden mindestens 2 Rechner oder 4 Rechner haben, welche mit den Partnernetzwerk Rechnern kommunizieren wollen.

Ich bin also ganz Ohr für Lösungsansätze.

PS: Mit IPSec beschäftige ich mich erst seit 2-3 Tagen.

PPS: Ich habe die drei Segmente in jeweils 3 Phase2 Blöcke gesteckt, da man das glaube ich so machen muss wenn ich es richtig verstanden habe. Lasse mich aber auch eines besseren belehren, wenn dies zu Problemen mit dem NAT Thema führen soll. Denn irgend etwas habe ich gelesen von NAT vor IPSec ist nicht möglich wenn man mehrere Phase2 Blöcke in 1 Phase1 Block steckt.

Gruß Denis



Wenn ich es richtig verstehe, wird mir Routen wie hier beschrieben:

https://docs.opnsense.org/manual/how-tos/ipsec-s2s-route.html

nicht weiter helfen, da ich als Partner Angabe nur Segmente habe und nicht eine einzelne IP-Adresse, die ich als Gateway definieren könnte. Richtig?

So und aus den letzten beiden Posts von euch werde ich aktuell ohne System nicht schlau.

Bin ich leider ratlos. Ich hab üblicherweise Site-2-Site Verbindungen im Einsatz.

Das sieht mir aus wie eine Remote-Access Verbindung für einen einzelnen Host. Die Frage nach dem fehlenden Remote-Gateway ist wirklich kniffelig.

@mimugmail: Hast Du eine Idee?
,,The S in IoT stands for Security!" :)

Also ich habe nun dieses Thema mal ausprobiert:

Setup a routed IPSec Tunnel
https://docs.opnsense.org/manual/how-tos/ipsec-s2s-route.html

Aber das bringt mich scheiunbar auch nicht weiter, denn hier benötigt man auf beiden Seiten eine Adresse.
Damit man dann ein Gateway mit dem IPSEC1000 interface anlegen kann.

Und da stehe ich wieder mit meinem Problem. Das ich für meine Phase 2 eine IP Adresse habe und auf der anderen Seite nur 3 IP-Segmente.

https://docs.opnsense.org/manual/how-tos/ipsec-s2s-binat.html


outbound NAT statt BINAT, SPD je P2 nicht vergessen, gibt aber eine Limitierung dass es eigentlich nur mit einer P2 möglich ist, einfach mal testen.


October 27, 2020, 01:33:48 PM #14 Last Edit: October 28, 2020, 07:19:14 PM by LHBL2003
@mimugmail

Vielen recht herzlichen Dank Michael bei mir hat es funktionier.

Folgende Konfiguration habe ich vorgenommen:

###################
Phase 1
ganz normale einstellungen würde ich behaupten

###################
Phase 2 (insgesammt 3 Mal hinzugefügt):
Lokales Netzwerk:
Typ: Netzwerk
Adresse: 10.xxx.xxx.68 /32 (Als Tunnel Adresse)

Entferntes / Partner Netzwerk
Typ: Netzwerk
Adresse: 10.ABC.0.0/13 (Zwei weitere Phasen für die Anderen Segmente 10.DEF.0.0/13 & 10.GHI.0.0/13)

Als Manuelle SPD-Einträge: 10.10.40.0/24 (Indem sich meine Rechner befinden)

###################
Firewall --> NAT --> Ausgehend (Outbound)

Modus:
   EN: Hybride Erstellung ausgehender NAT Regeln
    (automatisch generierte Regeln werden nach den manuellen Regeln angewandt)
   DE: Hybrid outbound NAT rule generation
    (automatically generated rules are applied after manual rules)

Insgesammt 3 Roules habe ich hinzugefügt:
----------------
Schnittstelle: IPsec
Quelladresse: 10.10.40.0/24 (Indem sich meine Rechner befinden)
Zieladresse: 10.ABC.0.0/13 (Zwei weitere Manuelle Rules für die Anderen Segmente 10.DEF.0.0/13 & 10.GHI.0.0/13)
Übersetung/Ziel: 10.xxx.xxx.68 /32 (Die Tunnel Adresse)