nordicmike
Goto Top

OPNsense IPsec hat keine Schnittstelle und kein Gateway

Moin zusammen,

Ich versuche per OPNsense das VPN über IPsec zum laufen zu bringen. Ich habe es über den Menüpunkt "VPN -> IPsec -> Connections" gemacht, also nicht über "Tunnel Settings (legacy)". Die Gegenseite ist übrigens ein Fortigate, dessen Tunnel mit einer Sophos UTM noch lief. Diese Sophos möchte ich nun gegen ein OPNsense ersetzen.

Phase 1 ist verbunden.
Phase 2 hat auch ein Child verbunden, bei dem das entfernte Netzwerk eingebunden wurde. Status ist auf beiden Seiten auf "verbunden".

IPsec hat in der Firewall eine Any Regel (nur im Testlabor).

Klingt gut soweit.
Nur, wenn ich in dieses entfernte Netzwerk pingen möchte, sehe ich im Live Log der Sense, dass der Weg über die WAN Schnittstelle raus geht und nicht über IPsec. Natürlich kommt keine Antwort zurück.

Ich kann keine Route hinzufügen, weil mir die Gateway fehlt.
Ich kann keine Gateway hinzufügen, da die IPsec Schnittstelle fehlt.
Nur in der Firewall Schnittstelle sehe ich die IPsec Schnittstelle.

Laut intensiver Google Recherche ist das auch normal, dass keine Schnittstelle angezeigt wird (Mit einer Test openVPN Verbindung poppt die Schnittstelle sofort auf).
Nur, wie bekomme ich dann die richtige Route hin?
In den Children kann ich den Haken bei "Policies" setzen oder nicht, mach keinen Unterschied.


Danke Euch and keep rockin'

Der Mike

Content-ID: 671414

Url: https://administrator.de/forum/opnsense-ipsec-hat-keine-schnittstelle-und-kein-gateway-671414.html

Ausgedruckt am: 20.02.2025 um 19:02 Uhr

aqui
aqui 17.02.2025 aktualisiert um 16:55:52 Uhr
Goto Top
Kurze Zwischenfrage: Dreht es sich bei deinem Setup um IKEv1 oder IKEv2 und welche Seite ist Responder und Initiator? Hat der Responder eine feste IP?
IPsec ist eine Kernel Erweiterung und arbeitet prinzipbedingt nicht mit virtuellen Interfaces wenn man jetzt einmal ein VTI Interface Setup unbeachtet lässt.
Spezifische Routen musst du deshalb auch nicht eingeben, denn die werden automatisch mit den Phase 2 SAs bestimmt.
NordicMike
Lösung NordicMike 17.02.2025 um 12:58:01 Uhr
Goto Top
Beide haben eine feste IP Nummer.
Ich habe beide IKE Versionen probiert und auch beide als Responder oder Initiator abwechselnd eingerichtet.

Und während wir hier schreiben...
... funktioniert es auf einmal.

Dabei habe ich das gemacht, was eigentlich alle machen, wenn sie einen Fehler haben: Nüchts face-smile

Danke Dir trotzdem
aqui
aqui 17.02.2025 aktualisiert um 17:28:41 Uhr
Goto Top
Und während wir hier schreiben... funktioniert es auf einmal.
👍 👏
Hier aber der Info halber noch einmal eine exemplarische Doku für den nächsten Tunnel... 😉
  • OPNsense Firewall als IPsec IKEv2 Initiator mit dyn. IP. Deshalb dort KeyID statt IP. (Bei statischer IP kann man da natürlich auch die feste IP Adresse als ID nehmen) LAN=192.168.111.1/24, LocalID=KeyID=opnsense@test.internal
  • VPN Responder ist ein Strongswan VPN Responder mit fester IP

ToDos bei OPNsense:
  • Global unter Connections IPsec aktivieren
  • P1 und P2 unter Tunnel Settings Legacy definieren. Aktuelle OPNsense 25er Release gibt AES 256 GCM in der P1 und P2 vor! Das Responder Setting unten berücksichtigt das. Hier muss man ggf. weitere aktivieren (Haken) wenn der eigene Responder kein GCM supporten sollte. GCM ist deutlich sicherer! (Siehe hier)
  • Regelwerk im IPsec Interface anpassen (hier testweise "Scheunentor") face-wink
opnipsec

Die korrespondierende Konfig des Strongswan VPN Responders (LocalID=IP Adresse) ist selbsterklärend und gilt entsprechend für alle möglichen IPsec Responder in Routern oder Firewalls auch. (children=P2):
opnsense {
 local_addrs = 2x.y.z.h
 remote_addrs = 0.0.0.0/0
  local {
   auth = psk
   id = 2x.y.z.h
   }
  remote {
   auth = psk
   id = keyid:opnsense@test.internal
   }
  children {
   net {
   local_ts = 172.25.24.0/23
   remote_ts = 192.168.111.0/24
   esp_proposals = aes256-sha512-modp2048,aes256gcm16-sha256-modp2048,aes256-sha256-modp2048
   }
  }
 proposals = aes256-sha512-modp2048,aes256gcm16-sha256-modp2048,aes256-sha256-modp2048
 } 
Entsprechend kommt der IKEv2 Tunnel dann auch sofort zustande:
opnsense: #4, ESTABLISHED, IKEv2, f308159926e51386_i 71155d18fb2a4f78_r*
  local  '2x.y.z.h' @ 2x.y.z.h[4500]
  remote 'opnsense@test.internal' @ 91.x.y.h[5507]
  AES_CBC-256/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/MODP_2048
  established 556s ago, rekeying in 13486s
  net: #1, reqid 1, INSTALLED, TUNNEL-in-UDP, ESP:AES_CBC-256/HMAC_SHA2_256_128
    installed 556s ago, rekeying in 2895s, expires in 3404s
    in  ce6f7b52,    240 bytes,     4 packets,    26s ago
    out cc885f71,    240 bytes,     4 packets,    26s ago
    local  172.25.24.0/23
    remote 192.168.111.0/24 
Weitere Kernel Internas kann man über das ipsec status Kommando und XFRM Frameset ansehen z.B. mit ip xfrm state. Leider ist aber im Shellzugang der OPNsense das "ip" Package nicht installiert so das einem zu mindestens im Default diese Informationen auf der OPNsense Shell verwehrt bleiben.

Works as designed! 👍 😉