VPN (IPsec) Windows zu pfsense nicht möglich
Hallo zusammen,
ich habe mich durch das Tutorial hier gearbeitet und war guter Dinge alles beachtet zu haben.
Leider zickt die Verbindung und ich sehe den Fehler nicht.
aqui hat im Tutorial Thread schon versucht einen ersten Diagnoseschritt zu gehen, allerdings kommt bei meinem Paketmitschnitt 0,0 bei raus.
Würde für mich bedeuten, dass Port 500 nicht an der pfsense ankommt (pfsense ist an der Fritz!Box als Exposed Host, manuelles Portforwarding wurde auch versucht, die Fritz!Box macht kein VPN).
Leider ändert sich dies auch nicht, wenn ich das Testnotebook (Windows 11) in das Transfernetz (Fritz!Box) packe und von dort die WAN-IP der pfsense anspreche.
Zwar wird beim Verbindungsaufbau nach einem Benutzernamen und Kennwort gefragt, danach folgt allerdings generell: Das Netzwerk ist nicht vorhanden oder wurde nicht gestartet.
Ein paar Screenshots hatte ich hier schon gepostet: klick
Das ist nun ähnlich einer Wimmelbildaufgabe.
Meine Vermutung geht in Richtung Firewallregeln, aber ich sehe keine WAN-Zugriffe von der Fritz!Box auf UDP 500, 18000 oder 4500 im Log der pfsense.
Gemäß Tutorial (bzw. Ergänzung) muss dort aber nichts mehr eingerichtet werden, was mich nun entsprechend verwirrt.
Vielleicht hat ja jemand identisches Problem gehabt, oder sieht ggf. direkt meinen Fehler?
Grüße
ToWa
ich habe mich durch das Tutorial hier gearbeitet und war guter Dinge alles beachtet zu haben.
Leider zickt die Verbindung und ich sehe den Fehler nicht.
aqui hat im Tutorial Thread schon versucht einen ersten Diagnoseschritt zu gehen, allerdings kommt bei meinem Paketmitschnitt 0,0 bei raus.
Würde für mich bedeuten, dass Port 500 nicht an der pfsense ankommt (pfsense ist an der Fritz!Box als Exposed Host, manuelles Portforwarding wurde auch versucht, die Fritz!Box macht kein VPN).
Leider ändert sich dies auch nicht, wenn ich das Testnotebook (Windows 11) in das Transfernetz (Fritz!Box) packe und von dort die WAN-IP der pfsense anspreche.
Zwar wird beim Verbindungsaufbau nach einem Benutzernamen und Kennwort gefragt, danach folgt allerdings generell: Das Netzwerk ist nicht vorhanden oder wurde nicht gestartet.
Ein paar Screenshots hatte ich hier schon gepostet: klick
Das ist nun ähnlich einer Wimmelbildaufgabe.
Meine Vermutung geht in Richtung Firewallregeln, aber ich sehe keine WAN-Zugriffe von der Fritz!Box auf UDP 500, 18000 oder 4500 im Log der pfsense.
Gemäß Tutorial (bzw. Ergänzung) muss dort aber nichts mehr eingerichtet werden, was mich nun entsprechend verwirrt.
Vielleicht hat ja jemand identisches Problem gehabt, oder sieht ggf. direkt meinen Fehler?
Grüße
ToWa
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 1921613642
Url: https://administrator.de/contentid/1921613642
Ausgedruckt am: 19.12.2024 um 08:12 Uhr
14 Kommentare
Neuester Kommentar
Ich hab es geade nochmal mit der neuen 2.6er Version und einem Windows 10 (21H2) getestet und rennt alles fehlerfrei wie es soll ! An der pfSense liegt es also nicht.
Primär ist das also ein Problem der FritzBox bei dir !!
Hier musst du absolut sicherstellen das keine irgendwelche VPN Settings der FritzBox selber noch aktiv sind. Das bewirkt das die FritzBox keine IPsec Pakete mehr forwardet, auch wenn sie fürs Forwarding eingetragen sind. Die FB "denkt" dann der IPsec Traffic ist für sie und ihr eigenes VPN.
Du solltest also nochmal die Konfig deiner FB genau ansehen !
Wenn du in diesem Fall den Packet Sniffer an der pfSense startest, kannst du dann wenigstens eingehende IKE (UDP 500) Pakete sehen ?? Das MUSS klappen !
Wenn nicht ist es eine WAN Port Firewall Regel die dann generell den IPsec Traffic auf die WAN Adresse der pfSense verbietet. Dann geht natürlich auch nix in Sachen VPN, das ist klar.
Es kann auch sein das diese Regel explizit alles verbietet und damit die eigentliche Ursache ist.
Wichtig ist das du in einer Kaskade wie bei dir auf dem WAN Port unten den Haken bei "RFC 1918 Netze erlauben" gesetzt hast !
Das Einrichten des IPsec VPN erzeugt automatisch eine ALLOW Regel der IPsec Protokoll Komponenten UDP 500, UDP 4500 und ESP Protokoll auf die WAN Port Adresse der FW. Natürlich nur sofern du das Erzeugen dynamischer Regeln nicht im Setup unterbunden hast.
Als allererster Schritt MUSS ein VPN Access des Clients im Transfernetz auf die pfSense funktionieren. Das stellt dann absolut sicher das das VPN an sich sauber und fehlerfrei funktioniert.
Sehr hilfreich wären hier in jedem Falle ein Auszug des IPsec Logs der Firewall !! (Bitte immer VOR dem Test über "Reset Logs" löschen damit nicht vorangegangener Log Müll die relevanten Infos überdeckt !!)
Da sollte sowas wie das hier (stark gekürzt) zu sehen sein. Wichtig ist das "established".
(10.77.77.0/ ist das Client IP Netz, 10.88.1.0 das Koppelnetz, .88 pfSense WAN, .120 Win10 Client, "user" MS-CHAPv2" Username)
Also strategisch vorgehen:
allerdings kommt bei meinem Paketmitschnitt 0,0 bei raus.
Das zeigt dann eindeutig das die IPsec Frames in deiner FritzBox hängen bleiben und erst gar nicht an der pfSense am WAN Port ankommen. Dann ist natürlich klar das es nicht funktionieren kann !Primär ist das also ein Problem der FritzBox bei dir !!
Hier musst du absolut sicherstellen das keine irgendwelche VPN Settings der FritzBox selber noch aktiv sind. Das bewirkt das die FritzBox keine IPsec Pakete mehr forwardet, auch wenn sie fürs Forwarding eingetragen sind. Die FB "denkt" dann der IPsec Traffic ist für sie und ihr eigenes VPN.
Du solltest also nochmal die Konfig deiner FB genau ansehen !
Leider ändert sich dies auch nicht, wenn ich das Testnotebook (Windows 11) in das Transfernetz (Fritz!Box) packe und von dort die WAN-IP der pfsense anspreche.
Mmmhhh...das zeigt das dann zusätzlich auch noch ein Konfigurationsfehler gemacht wurde in deinem Setup. Wenn du in diesem Fall den Packet Sniffer an der pfSense startest, kannst du dann wenigstens eingehende IKE (UDP 500) Pakete sehen ?? Das MUSS klappen !
Wenn nicht ist es eine WAN Port Firewall Regel die dann generell den IPsec Traffic auf die WAN Adresse der pfSense verbietet. Dann geht natürlich auch nix in Sachen VPN, das ist klar.
Es kann auch sein das diese Regel explizit alles verbietet und damit die eigentliche Ursache ist.
Wichtig ist das du in einer Kaskade wie bei dir auf dem WAN Port unten den Haken bei "RFC 1918 Netze erlauben" gesetzt hast !
Das Einrichten des IPsec VPN erzeugt automatisch eine ALLOW Regel der IPsec Protokoll Komponenten UDP 500, UDP 4500 und ESP Protokoll auf die WAN Port Adresse der FW. Natürlich nur sofern du das Erzeugen dynamischer Regeln nicht im Setup unterbunden hast.
Als allererster Schritt MUSS ein VPN Access des Clients im Transfernetz auf die pfSense funktionieren. Das stellt dann absolut sicher das das VPN an sich sauber und fehlerfrei funktioniert.
Sehr hilfreich wären hier in jedem Falle ein Auszug des IPsec Logs der Firewall !! (Bitte immer VOR dem Test über "Reset Logs" löschen damit nicht vorangegangener Log Müll die relevanten Infos überdeckt !!)
Da sollte sowas wie das hier (stark gekürzt) zu sehen sein. Wichtig ist das "established".
(10.77.77.0/ ist das Client IP Netz, 10.88.1.0 das Koppelnetz, .88 pfSense WAN, .120 Win10 Client, "user" MS-CHAPv2" Username)
> CHILD_SA con-mobile{6} established with SPIs c2f00c0e_i da4a8b06_o and TS 192.168.1.0/24|/0 === 10.77.77.1/32|/0
> SPI 0xda4a8b06, src 10.88.1.88 dst 10.88.1.120
> adding outbound ESP SA
> SPI 0xc2f00c0e, src 10.88.1.120 dst 10.88.1.88> adding inbound ESP SA
> using HMAC_SHA1_96 for integrity
> using AES_CBC for encryption
> CHILD_SA con-mobile{6} state change: CREATED => INSTALLING
> selecting traffic selectors for us:
> selected proposal: ESP:AES_CBC_256/HMAC_SHA1_96/NO_EXT_SEQ
> configured proposals: ESP:AES_GCM_16_256/NO_EXT_SEQ, ESP:AES_GCM_12_256/NO_EXT_SEQ, ESP:AES_GCM_8_256/NO_EXT_SEQ
> received proposals: ESP:AES_CBC_256/HMAC_SHA1_96/NO_EXT_SEQ, ESP:AES_CBC_128/HMAC_SHA1_96/NO_EXT_SEQ
> proposal matches
> assigning virtual IP 10.77.77.1 to peer 'user'
> reassigning offline lease to 'user'
> peer requested virtual IP %any
> maximum IKE_SA lifetime 26541s
> scheduling rekeying in 23661s
> IKE_SA con-mobile[3] state change: CONNECTING => ESTABLISHED
> IKE_SA con-mobile[3] established between 10.88.1.88[pfSense.test.home.arpa]...10.88.1.120[10.88.1.120]
> authentication of 'pfSense.test.home.arpa' (myself) with EAP
> authentication of '10.88.1.120' with EAP successful
> EAP method EAP_MSCHAPV2 succeeded, MSK established
> parsed IKE_AUTH request 4 [ EAP/RES/MSCHAPV2 ]
> received cert request for "CN=internal-ca, ST=M, L=M, O=Private, OU=Test"
> found matching ike config: 10.88.1.88...0.0.0.0/0, ::/0 with prio 1052
> candidate: 10.88.1.88...0.0.0.0/0, ::/0, prio 1052
> looking for an IKEv2 config for 10.88.1.88...10.88.1.120
> parsed IKE_SA_INIT request 0 [ SA KE No N(FRAG_SUP) N(NATD_S_IP) N(NATD_D_IP) V V V V ]
> received packet: from 10.88.1.120[500] to 10.88.1.88[500] (1104 bytes
- Erstmal nur aus dem Transfernetz testen um ggf. FB Fehler erstmal sicher auszuschliessen
- Regelwerk checken das IPsec auf die WAN Adresse passieren darf, auch Default Regel
- IPsec Log löschen und danach einen Verbindungsversuch machen. Was steht im IPsec Log ?
- Was sagt der Win 10 Client als Fehlermeldung ?
Nope, die Fritz!Box ist nackt, da war nie was konfiguriert und ist auch nicht.
OK, dann bleibt nur das Regelwerk am pfSense WAN Port !!Im Tutorial stand ja, dass das automatisch erzeugt wird, was bei mir nicht passiert ist.
Bitte lies mal genau was oben steht ! Die automatisch erzeugten Regeln kannst du im Rulset nicht sehen !"pfSense® software automatically adds hidden firewall rules which allow traffic required to establish enabled IPsec tunnels."
https://docs.netgate.com/pfsense/en/latest/vpn/ipsec/firewall-rules.html
Sehr wahrscheinlich hast du den Blocker für die RFC 1918 Netze vergessen zu entfernen am WAN Port, kann das sein ?!
In jedem Fall MUSS im IPsec Log der Firewall eingehender IKEv2 Traffic zu sehen sein !
Hier kannst du testweise auch mal jeden beliebigen IPsec Client mit irgendwelchen Phantasiecredentials auf die WAN Port IP loslassen um Log Meldungen generieren zu können. (Siehe Beispiel oben).
Wenn du willst kannst du auch sicherheitshalber die IPsec Rules etablieren und sie später wieder löschen. Doppelt schadet nicht. Sie werden aber definitiv automatisch angelegt.
Der Test und Output oben hat keine extra Rules am WAN Port.
Es sieht ja de facto so aus als ob gar kein IPsec Traffic an deiner pfSense ankommt ! Warum auch immer...?!
Hilfreich wären ein Trace mit dem Diagnostic Tool am WAN Port auf UDP 500
und der Output des IPsec Logs der FW.
Wenn alle Stricke reissen kannst du deinen Client auch einmal lokal mit einem Raspberry Pi aus der Bastelschublade checken wenn du für den RasPi noch ein Server Zert. in der pfSense erzeugst.
IKEv2 VPN Server für Windows und Apple Clients mit Raspberry Pi
Beide nutzen den gleichen Server (Strongswan)
Ich aber keine Chance habe nachzuvollziehen ob diese auch wirklich passiert sind?
Ja, da hast du Recht. Die OPNsense ist da etwas besser, denn die hat einen Extra Button im Regel GUI um sich die automatischen und Default Regeln anzeigen zu lassen. Ich meine auf der pfSense geht das nicht oder wenn, dann vermutlich nur über die Shell und iptables direkt.To override the automatic addition of these rules check Disable all auto-added VPN rules under System
Jepp, das ist der Setup Punkt. Wenn du den aktivierst MUSST du natürlich die IPsec Regeln setzen.und genau da klemmte es bei mir, dass ich nicht verstehen kann warum ich eben keine Eingänge auf UDP 500 sehe
Das ist in der Tat sehr sehr ungewöhnlich ! Auch wenn du den Paket Capture z.B. mal ganz offen capturen lässt ohne Filter auf UDP 500 MUSST du dort eingehende UDP 500 Pakets sehen wenn du einen Zugriffsversuch machst vom VPN Client !Es kann natürlich ggf. auch der Winblows Client selber sein das du da sowas wie Kaspersky oder eine andere (meist überflüssige) Security Appliance nutzt die alles blockt was nicht explizit freigegeben ist, so das der Win VPN Client schon gar kein IPsec aussendet...auch möglich !
Das kannst du aber sehr schnell checken indem du den Client VPN Traffic mal auf einen Wireshark Sniffer sendest und das überprüfst.
letztlich ist es vermutlich irgendeine dämliche Kleinigkeit.
Irgend sowas wird's sicher sein ! Die VPN Konfig auf der pfSense ist wasserdicht. Bleibt also der Windows 11 Client und die integrierte VPN
Das war dann bei dem Fehlerbild auch das Einzige was übrigblieb...!Nur noch einmal dumm nachgefragt:
Den wichtigen KB 5010793 Patch für Windows hast du hoffentlich installiert, oder ?
Der fixt ein generelles Problem aller Windows lokalen VPN Clients was mit dem Januar Update kam !
Den Punkt Security Powershell im Tutorial hatte ich übersprungen, da ich erstmal einfach nur checken wollte ob es im Standard funktioniert, vielleicht ist das ein Fehler?
Nope, war definitiv kein Fehler, denn du hast ja SHA1 entsprechend im Setup aktiviert. Alles gut also... Deine Win VPN Konfig ist soweit auch absolut richtig. Nur...Wenn der Win Client überhaupt keinerlei IPsec sendet dann ist das definitiv kein FW Problem wenn du im Gegenzug dazu bei Android ja solchen eingehenden Traffic siehst.
Ich schmeiss mal eben mein Windows 11 Testsystem an und checke das mal mit Win 11. Nur um auf Nummer sicher zu gehen.
So, gleiche Firewall wie bei Windows 10 und auch mit Windows 11 die gleichen Log Messages, Captures und Connection. Funktioniert auch mit 11 fehlerfrei:
Was hast du da bloß verfummelt auf deinem Windows Client ??
So, gleiche Firewall wie bei Windows 10 und auch mit Windows 11 die gleichen Log Messages, Captures und Connection. Funktioniert auch mit 11 fehlerfrei:
Was hast du da bloß verfummelt auf deinem Windows Client ??
👍 👏
Ggf. sollte man diese Warnung nochmal mit ins Tutorial aufnehmen.
Das Ding scheint die Netzwerkeinstellungen von Windows zu verdrehen.
Ja, der tötet den lokalen VPN Client wie das z.B. auch der Shrew Client macht. Man sollte nur einen IPsec Client zur Zeit nutzen.Ggf. sollte man diese Warnung nochmal mit ins Tutorial aufnehmen.
Manchmal könnte man AVM...
He he he...