Hardware-Firewall aus Symcon fernsteuern

Habe eine TP-Link ER605 Hardware Firewall und würde gerne aus Symcon dynamisch Einstellungen auf dem Gerät verändern. Im Speziellen geht es darum, dass die IPSec-VPN-Verbindung zu meinem Werkstatt-LAN regelmäßig nach Übertragung größerer Datenmengen aufhört zu funktionieren. Durch Deaktivieren und Aktivieren der VPN-Verbindung in der Konfigurationsoberfläche der Firewall kann dem abgeholfen werden.

Leider habe ich große Schwierigkeiten, einen Zugriff auf die Firewall aus Symcon heraus hinzubekommen.

Zunächst wollte ich es per SSH machen, was allerdings daran scheitert dass einerseits die SSH-Funktionalität von PHP einfach nicht mit dem Gerät kommunizieren mag (es kommt sowohl bei meinem eigenen Code als auch wenn ich das SSH Client Modul verwende nur eine Reihe seltsamer nicht schlüssiger Fehlermeldungen:

Match mac success
continue IP type
Match mac success
continue IP type
Match mac success

…egal was man sendet, es kommt offenbar irgendwas bei dem Gerät an was dieses nicht versteht und völlig falsch interpretiert).

Andererseits habe ich auch, soweit ich das überhaupt verstehe, aus dem CLI gar keinen Zugriff auf die Checkbox „Aktiviert“ bei den VPN-Verbindungen sondern kann per Befehl nur entweder Verbindungen hinzufügen oder löschen. Die Herangehensweise per CLI ist ohnehin für jemanden der damit keine Erfahrung hat alles andere als intuitiv.

Telnet gibt es bei der Gerätegeneration nicht mehr. Allenfalls per ssh-Command des Betriebssystems könnte ich es ggf per Skript machen, aber wie gesagt, ich habe keine Ahnung ob ich das zerstörungsfreie kurzzeitige Aus–und wieder Einschalten einer VPN-Verbindug überhaupt per CLI auslösen kann.

Also wollte ich versuchen, mit curl über das Webinterface darauf zuzugreifen, aber auch das Reverse Engieering der HTTP-Schnittstelle fällt mir angesichts Framework-Bloat sehr schwer. Ich bekomme mit den Devtools von Chrome nichtmal heraus, was eigentlich an konkretem Code ausgeführt wird, wenn ich auf einen Button klicke. Früher waren das ja einfach HTML-Formulare, die einen Post-Request erzeugt haben, aber so etwas scheint es heutzutage gar nicht mehr zu geben, stattdessen werden hunderte Javascripts geladen und darin die Stelle zu suchen, an der wirklich etwas entscheidendes wie das Login passiert, erscheint mir mit meinem Erfahrungshorizont aussichtslos.

Hat irgendwer sowas in der Art schonmal gemacht? Gibt es noch andere Ideen? Finde es wirklich frustrierend, wie unnötig kompliziert es wieder mal ist, automatisiert eine Checkbox zu ändern :-/

IKE hat automatisches Rekeying nach Zeit und oder Datenmenge. Das würde ich mal auf beiden teilnehmenden Geräten korrekt einstellen.

Das Javascript macht am Ende auch oft nicht mehr. Mal die Entwicklerkonsole vom Browser offen gehabt (VOR der Anmeldung schon) und geguckt was da passiert?

Wie wäre es mit Quick und Dirty… Schaltbare Steckdose und bei Bedarf einfach Neustarten. :stuck_out_tongue_winking_eye:

Hi,
es gibt von tplink den Omada Controller, der hat eine API. Der kann den Router verwalten, ebenso Access points u Switches von tplink.
Muss aber gestehen, ich bin noch nicht dazu gekommen mich mit der API zu beschäftigen.
Den Omada Controller gibt es als Software oder als Hardware Lösung.
Bei mir läuft Omada u Symcon auf einem Raspi.

https://use1-omada-northbound.tplinkcloud.com/doc.html#/home

Chris

Das ist sehr interessant. Wäre natürlich grundsätzlich am besten, wenn ich das Problem richtig lösen könnte. Hast du irgendeine Idee, wie ich heraus finden kann, was die „korrekte“ Einstellung wäre? Gegenstelle ist eine Fritzbox. Hin und wieder wird die Verbindung auch „nur“ sehr unzuverlässig, also eine Menge Package Loss. In dem Fall kann ich die FB remote neu starten per Fritzbox-Modul. Aber wenn die Verbindung gar nicht mehr geht, hilft mir nur lokal das „Neustarten“ der VPN-Verbindung.

Leider wäre dann ja die gesamte Internetverbindung weg. Das Teil braucht auch eine Weile um wieder zu starten. Das VPN ist schon wichtig, aber nicht so wichtig dass ich dafür mein ganzes Netzwerk für mehrere Minuten automatisiert abschießen möchte.

Das ist mir neu. Ich habe das Omada-Zeug bislang verstanden als eine reine Cloud-Lösung. Wenn ich sowas auch lokal nutzen kann interessiert es mich auch. Danke für den Hinweis.

Hello,

die Zeiten müssen auf beide Geräte gleich sein, beim Tplink SA Lifetime (bei mir 28800)
DPD dead Peer dedection, auf beiden gleich.
Negotiation Mode, wer ist Initiator wer ist Responder. Mal umdrehen vielleicht hilft es
Deine Provider spielen mit? In Austria muss bei machen nachhelfen.

Was die Fritzbox so hergiebt, leider kenne ich die nicht

Gruß aus dem Waldviertel
Chris

1 „Gefällt mir“

Huhu. Man kann es ja zeitlich auf die Zwangstrennung mit dem Provider terminieren. Dann ist deine VPN ja sowieso weg. Vielleicht ist ja auch selbige ein Problem deiner Dauer VPN?

Habe mich an diesem Thread orientiert und die SA Lifetime mal auf 3600 Sekunden herunter gestellt. Bislang sieht’s gut aus.

Du meinst ob die IPv4 von außen erreichbar sind? Ja. Musste ich auf der einen Seite auch explizit veranlassen…

Nee, eher umgekehrt… die Zwangstrennung löst das Problem gelegentlich aus. Aber auch nicht immer.

Jetzt schaue ich erstmal ob die geänderten Lifetime Werte für das Rekeying eine Verbesserung bringen. Dann muss ich ja theoretisch auch gar nicht mehr die Firewall fernsteuern.

Heute Nacht nach der Zwangstrennung auf der Gegenseite (Fritzbox) ist die Verbindung wieder „gestorben“. Habe jetzt mal die SA Lifetime von 3600 auf 3500 geändert, in der Hoffnung dass der neue Schlüssel dann „rechtzeitig“ ausgehandelt wird… aber ob das so Sinn ergibt weiß ich nicht.

Scheint jetzt seit einigen Tagen stabil zu laufen mit DPD Interval 60.