Eigentlich ist es recht einfach, eine VPN-Verbindung mit Hilfe des Shrew Soft VPN Clients zu einer FRITZ!Box mit aktueller Firmware aufzubauen.In der Anleitung von AVM ist alles relevante beschrieben:

VPN-Verbindung zur FRITZ!Box mit Shrew Soft VPN Client einrichten

Das Ganze hat bislang auch mehrmals erfolgreich ohne Probleme geklappt. In diesem Szenario komme ich aktuell leider nicht weiter:

  • VPN gemäss Anleitung eingerichtet.
  • Von zu Hause aus hinter Fritzbox funktioniert die Verbindung.
  • Von unterwegs via UMTS/LTE klappt es ebenfalls.
  • Von der Arbeit aus hinter einer pfSense wird der Tunnel zwar vermeintlich aufgebaut, aber es fließt kein Verkehr. “Security Associations Failed” im VPN-Client zählt hoch.

Shrew Soft VPN Client - SA FailedBemerkung am Rande: Der Computer (ein Notebook) ist dabei immer der Gleiche.

Ich vermute es hängt irgendwie mit der pfSense zusammen. Die Logs sind allerdings unauffällig. Der Cisco-workaround hat ebenfalls nicht geholfen:

Cisco VPN pass through not working when behind pfSense

Es scheint kein generelles IPsec(Passthrough)-Problem zu sein, da beispielsweise die Verbindung zu einer Telekom Digitalisierungsbox Premium, ebenfalls mit dem Shrew Soft VPN Client und gleichem Notebook als auch pfSense, funktioniert.

Im Moment versuche ich neben der weiteren Recherche (die bis jetzt nichts gebracht hat) und dem Trace Utilitiy des VPN-Clients dahinter zu kommen, woran es hängt.

Falls noch jemand einen Tipp hat, immer her damit!

Da weiß man gleich wieder, warum man OpenVPN stressfreier findet 😉

Die Lösung (siehe auch Update vom 19.10.2016)

Auf der pfSense unter “System – Advanced – Firewall/NAT” den Haken entfernen bei “Disable Firewall Scrub” und auf “Save” klicken.

Links

pfSense – IPsec Troubleshooting

Shrew Soft – VPN Bug Report Windows (interessant wegen des Trace Utility)

pfSense – VoIP Configuration (Scrub)

pfSense – Firewall (Scrub)

FreeBSD – Handbook – Firewalls – pf (Scrub)

TU Wien – OpenBSD – PF: Scrub (Paket-Normalisierung)

Update 13.10.2016 – 12:27

Eine Verbindung zu einem Linksys RV082 klappt ebenfalls.

Update 13.10.2016 – 15:46

Der AVM-Support kann oder will nicht helfen und verweist auf den Hersteller des VPN-Clients.

Update 14.10.2016 – 00:12

Zum Testen wurde in einem Netzwerk in dem eine FRITZ!Box 7490 den Internetzugang stellt, unter VMware Workstation Player eine virtuelle Maschine mit pfSense und jeweils eine mit Linux Mint und Windows 8.1 angelegt. Anschließend wurde der Shrew Soft VPN Client installiert und entsprechend konfiguriert. In dieser Testumgebung funktioniert der Zugriff, daraus lässt sich evtl. schließen, das es nicht direkt mit pfSense im Allgemeinen zusammenhängt.

Update 14.10.2016 – 15:25

Inzwischen glaube ich nicht unbedingt mehr daran, das es an der pfSense liegen könnte. Ein weiterer Kandidat könnte das verwendete VDSL-Modem vom Typ ZyXEL VMG1312-B30A (Firmware: 1.00(AAEB.5)) sein. In Verbindung mit diesem Modem gab es bereits Probleme mit IPsec:

[GELÖST]Zyxel VMG1312-B30A IPSec tot nach 24 Stundentrennung

Im Netz finden sich auch neuere Firmware-Versionen, allerdings bin ich unschlüssig, ob man eine davon installieren sollte. Jedenfalls wurde der Herstellersupport kontaktiert.

Update 17.10.2016

Heute haben wir festgestellt, das eine Verbindung zu DATEVasp (via Cisco AnyConnect) ebenfalls funktioniert. Entweder ist das Problem sehr speziell oder es liegt an den FritzBoxen (Verbindungen zu unterschiedlichen AVM-Routern funktionieren nicht).

Zusätzlich verwirrend kommt eine E-Mail vom ZyXEL-Support dazu, worin mich ein Mitarbeiter bittet, ich möge dem Kunden beim Aufbau der VPN-Verbindung helfen. Es steht ja alles, nur funktioniert es nicht so richtig.

Beim Mitlesen des Netzwerkverkehrs und dem Log des VPN-Clients sieht es so aus, als ob von der Gegenstelle (aka FritzBox) keine Antwort durch den Tunnel kommt, dies sieht man am Beispiel von Ping.

Update 19.10.2016

Heute wurde zunächst mit einem anderen VDSL-Modem getestet. Dazu wurde ein Speedport W921V als Modem konfiguriert und angeschlossen. Leider änderte sich dadurch nichts, aber wenigstens konnte so das ZyXLE-Modem als mögliche Fehlerquelle ausgeschlossen werden (außer beide Geräte hätten Probleme mit IPsec-Paketen).

Als nächstes wurde eine andere pfSense angeschlossen und nur mit dem nötigsten konfiguriert. Ziel war es herauszufinden, ob es an irgendeiner Einstellung liegen könnte und siehe, da klappte die VPN-Verbindung. Da man die Firewall-Regeln ausschließen konnte musste es etwas anderes sein. Der “Treffer” wurde bei “Disable Firewall Scrub” gelandet, der dortige Haken wurden im Zuge der Optimierung der pfSense für VoIP (siehe Links) gesetzt, per Standard ist dort kein Haken.

Soll heißen: Scrub ist aktiv und normalisiert Datenpakete. Daraus könnte man jetzt Ableiten, das die IPsec-Datenpakete der FRITZ!Box und/oder des Shrew Soft VPN-Clients irgendwie anormal sind.