VPN Verbindung zw. pfSense und Fritzbox
-
Hallo,
ich versuche eine Fritzbox 7390 und pfSense, bzw. die Netze dahinter, über ein IPSec VPN miteinander zu verbinden. Die pfSense steht hinter einer Fritzbox. Dort sind die Ports 500, 4500 (beide UDP), 10000 (TCP) und ESP auf die pfSense weitergeleitet.
Leider funktioniert der Verbindungsaufbau nur von der pfSense zur entfernten Fritzbox. Wenn die entfernte Fritzbox die Verbindung initialisiert, schlägt dies mit der Meldung "IKE-Error 0x2020" fehl. Auf der pfSense ist von einem Versuch nichts zu sehen.
Es sieht beinahe so aus, als würden die Requests der entfernten Fritzbox nicht bei der pfSense ankommen.
Gruß, Bastian
-
Der Vollständigkeit halber und in der Hoffnung auf Lösungsansätze, hier das Netzwerkschema:
.–---+-----.
| Fritzbox | (VPN Endpoint)
'-----+-----'
:
: PPPoE-Provider
:
WAN / Internet
:
: PPPoE-Provider
:
.-----+-----.
| Fritzbox | (192.168.1.1/24)
'-----+-----'
|
LAN |
|
.-----+-----. (VPN Endpoint)
+-------------+ pfSense +-------------+
| '-----+-----' |
| |
LAN | 192.168.1.0/24 LAN | 192.168.179.0/24
| |
.-----+------. .-----+------.
| LAN-Switch | | LAN-Switch |
'-----+------' '-----+------'
| |
...-----+------... ...-----+------... -
Ahoi,
An der Stelle ist das Netzdiagramm nicht ganz so entscheidend, wie der Punkt, dass zwei FBs involviert sind. Selbst wenn die vorgeschaltete FB alle Ports weitergibt, gab es (bei meinen Tests) bislang immer trotzdem Probleme wenn die Verbindung von außen ankam (vermutlich GRE o.ä.) was die FritzBox einfach verschluckt. Ich habe deshalb die Versuche irgendwann eingestellt, da das FB VPN (damals noch ) nur über dieses lausige Windows Tool zu konfigurieren war und auch das neue Verfahren über die WebUI sehr minimalistisch ist (man kann keinerlei IPSEC Werte eintragen). Da auch nirgends konkret von AVM Daten bereitgestellt wurden auf Anfrage, mit welchen Daten das VPN detailliert läuft und es noch dazu in Verbindung mit VoIP auf der FritzBox das Problem gab, dass bei aufgebautem VPN Tunnel zwischen FB und FB (als Notlösung da FB->pfSense nicht möglich war) der Anrufer nicht zu hören war (weil die VoIP Daten über das falsche GW und das VPN geleitet wurden -> totaler Unsinn) habe ich das FritzBox Problem eingestampft und hinter die zweite Fritzbox ebenfalls eine pfSense gestellt und einen S2S Tunnel via OpenVPN aufgebaut, der dann auch innerhalb einer Stunde betriebsbereit war. Allein das herumkaspern mit den FBs und mit dem AVM Support kostet schon mehr Arbeitszeit und Mannstunden, als eine APU o.ä. kostet, die auf der anderen Seite vor Ort reingeworfen wird als Endpunkt für das VPN. ;)
Sorry, dass ich hierzu keine besseren Erfahrungswerte habe.
Grüße
-
Servus Bastian,
ich Dein Szenario (fast) genau so am Laufen.
Hauptunterschied ist, dass ich in der FB die WAN IP von der pfS Box als Exposed Host eingetragen habe, da direkt an der FB nichts hängt und ich die FB eigentlich nur als "Quasi-Modem" verwenden will. Ich habe die FB auch nie geupdatet (Fritz!OS 5.50), könnte also sein, dass es mit einer neueren Firmware zu Deinen Problemen kommt.
Nicht vergessen: In der Fritz!Box die vor der pfS hängt sollte KEINERLEI VPN eingerichtet sein, sonst greift sich u.U. die FB die IP-Sec Ports und es kommt nie was bei der pfS an!Da es ja kein Riesenaufwand ist, wäre ein Versuch mit Exposed Host bestimmt kein Fehler…
Viel Glück!Harry
Gerade noch in Deinen Netzdiagramm entdeckt:
Du hast im WAN zwischen der FB und der pfS und einem Deiner LANs das gleich Subnet 192.168.1.0 / 24, das würde ich auch auf alle Fälle ändern! -
Vielen Dank für die Antworten.
Eine zusätzliche pfSense auf der Gegenseite ist leider keine Option. Es geht nämlich nicht nur um eine VPN Verbindung, sondern um elf. Zur Zeit ist es eben so gelöst, dass sich diese elf Fritzboxen mit einem Standort verbinden. Grundsätzlich funktioniert es, aber die eine Fritzbox ist mit den VPN Verbinungen (+ WLAN & DECT) zu sehr ausgelastet, daher eben die Idee mit pfSense.
@eSpezi
Die FB hatte ich schon als Exposed Host konfiguriert, geändert hat es leider nichts. Aber mir fiel gerade ein, dass ich die bestehenden VPN Verbindungen auf der FB zum testen immer nur deaktiviert und nie gelöscht habe. Da bleiben die Listener auf den Ports vermutlich bestehen.Zu den Netzen:
Grundsätzlich soll es so sein, dass nicht alle Hosts/Geräte aus dem VPN erreichbar sein sollen. Daher die Trennung in unterschiedliche Netze. Ein Zugriff aus dem Netz 192.168.179.0/24 auf das andere Netz (192.168.1.0/24) soll aber möglich sein.192.168.1.0/24:
Darin befinden sich Clients, Drucker und eben alles, was nicht aus den per VPN verbundenen Netzen erreicht werden soll. Die FB ist ebenfalls in diesem Netz, da sie weiterhin WLAN Access Point und Internet Gateway bleiben soll.
Die FB kann leider nur ein privates Netz brauchbar verwalten. Das WLAN Interface hängt leider hinter der gleichen Bridge, hinter der auch der Switch der FB hängt, so dass das WLAN immer in dem selben Netz ist, wie der Switch auch. Der sog. Gastzugang ist für mich auch nicht zu gebrauchen, da die Netze dann völlig gegeneinander abgeschottet sind.192.168.179.0/24:
In diesem Netz sind alle Hosts, die aus dem VPN erreichbar sein sollen. -
Hallo b_s101,
ich versuche gerade fast das gleiche Szenario nachzustellen. Kannst Du deine Einstellungen posten? Hast Du die VPN-Einstellungen der Fritzbox manuell geändert? Wleche Einstellungen hast du in der pfSense?
Gruß.
-
Huii, da hast du ja einiges vor. 11 VPNs zu Fritzboxen….
Das hab ich auch mal versucht und habe irgendwann nach Monaten resigniert. IPsec ist ja schon zickig, aber IPsec in Verbindung mit einer Fritzbox ist der Oberknaller.
Eins kann ich dir schon vorweg sagen, so richtig stabile IPSec Verbindungen bekommst du mit einer FB nicht hin.
Ich hatte 7 Fritzboxen via IPSec verbunden und je mehr es wurden um so instabiler wurde es.
Da die IKE Tunnel Lifetime in den FBs auf eine Stunde fest eingebrannt ist, kommt es gewöhnlich dann zu kurzen aussetzern :/Hier eine Beispiel CFG einer meiner FB Verbindungen...
(Bedenke das du mit einer FB keine zwei Phase 2 Tunnels aufbauen kannst, also muss dein IP Range der Phase2 gruß genug gegriffen werden, wenn du von der FB mehrere Netze erreichen willst.)vpncfg {
connections {
enabled = yes;
conn_type = conntype_lan;
name = "FB-VPN";
always_renew = yes;
reject_not_encrypted = no;
dont_filter_netbios = yes;
localip = 0.0.0.0;
local_virtualip = 0.0.0.0;
remoteip = 0.0.0.0;
remotehostname = "DYNDNS.der.PFSENSE";
remote_virtualip = 0.0.0.0;
localid {
fqdn = "DYNDNS.der.FRITZBOX";
}
remoteid {
fqdn = "DYNDNS.der.PFSENSE";
}
mode = phase1_mode_aggressive;
phase1ss = "def/3des/sha";
keytype = connkeytype_pre_shared;
key = "Ein_starkes_Passwort";
cert_do_server_auth = no;
use_nat_t = no;
use_xauth = no;
use_cfgmode = no;
phase2localid {
ipnet {
ipaddr = 192.168.11.0;
mask = 255.255.255.0;
}
}
phase2remoteid {
ipnet {
ipaddr = 192.168.0.0;
mask = 255.255.0.0;
}
}
phase2ss = "esp-3des-sha/ah-no/comp-no/pfs";
accesslist =
"permit ip any 192.168.179.0 255.255.0.0";
}
ike_forward_rules = "udp 0.0.0.0:500 0.0.0.0:500",
"udp 0.0.0.0:4500 0.0.0.0:4500";
}
//EOFAuf der PFsense Seite musst du folgendes eintragen…
Phase 1
Remote gateway "DYNDNS.der.FRITZBOX"
Authentication method "Mutual PSK"
Negotiation mode "aggressive"
My identifier "Distinguished name" "DYNDNS.der.PFSENSE"
Peer identifier "Distinguished name" "DYNDNS.der.FRITZBOX"
Pre-Shared Key "Ein_starkes_Passwort"
Encryption algorithm "3DES"
Hash algorithm "SHA1"
DH key group "1 (768bit)"
Lifetime "3600"
NAT Traversal "Disable"
Dead Peer Detection "Enable"Phase 2
Local Network "192.168.0.0 /16"
Remote Network "192.168.11.0 /24"
Protocol ESP
Encryption algorithms "3DES"
Hash algorithms "SHA1"
PFS key group "1 (768bit)"
Lifetime "3600"Das die VPN Fremdnetze nicht auf ander IP-Ranges in deiner PFsense können, kannst du in der PFsense FW festlegen.
Ich hoffe ich konnte etwas helfen.
Achso nochwas, eine preiswerte Alternativlösung wäre an jedem Standort einen Raspberry zu stellen, der eine OVPN Verbindung aufbaut. OVPN ist wesentlich dankbarer. Jedoch ist der Rapberry nicht für hohe Transferraten ausgelegt. Aber ich weiß ja nicht was drüber soll.
–Edit--
Die FB darf den VPN Dienst nicht aktiviert haben und das du die passenden Ports in der FB weitergeleitet hast sollte klar sein, natürlich besser wäre es, wenn du die FB als Modem betreiben würdest, damit die PFsense alles selbst händeln kann. Aber mit den neueren Firmwareversionen derFritzbox 7390 ist das leider nicht mehr möglich. Ich hab mir aus einem ähnlichen Grund eine Vodafone Easybox 803 in der Bucht für ca 25€ geschossen, da man dort noch auf Modembetrieb umstellen kann. -
@rubinho:
Super, vielen Dank für die CFG-Files! Es hat super klappt.
Meine pfSense ist als exposed Host hinter einer FB 7390 mit 6.03 als Firmware. Habe nur zusätzlich use_nat_t = yes in der FB gesetzt und in der pfSense auch NAT aktiviert. -
Danke für die Rückmeldung und schön das ich helfen konnte bzw. das es geklappt hat ;)
Achso nochwas, da du ja die Pfsense nicht direkt im Internet hast, sprich sie nicht die offizielle IP besitzt, kann es vorkommen, dass dir Dead Peer Detection in die Suppe spuckt und dein Tunnel unter umständen nicht richtig abgebaut beziehungsweise es ewig Dauert, bis der Tunnel wieder richtig aufgebaut wird. (Bei längerer Nutzung)
In dem Fall schalte DPD sowohl in der Pfsense als auch in der FB ab. Und achte darauf, das die Uhrzeiten stimmen. NTP bei IPsec ist Pflicht ;)Änderung der FB VPN CFG…
"always_renew = no"