UPDATE zu: Ausfallsicherheit für Unternehmen; SipStatus in E3372 auf 0 setzen



Hier folgt ein Nachtrag zum Artikel "Ausfallsicherheit für Unternehmen" in Bezug auf die Nutzung des SurfStick Huawei E3372, insbesondere mit der Nutzung des Vodafone GigaCube Flexvertrages.

Problematik#1

Ihr habt euch einen Vodafone GigaCube Flex Vertrag gekauft und wollt damit eine Ausfallsicherheit erschaffen. So weit so gut.

Wie beschrieben, geht dies z.B. mit dem Huawai SurfStick E3372. Wie im oben verlinkten Originalartikel beschrieben gilt es dabei zu erstmal mit dem Stick überhaupt eine Mobilverbindung zu Vodafone aufzubauen. Denn dies funktioniert nicht ohne Konfigurationsänderung, da der die GigaCube SIM Karte nicht wie gewöhnlich über den APN web.vodafone.de, sondern home.vodafone.de ins Netz einwählt! Dies kann jedoch relativ einfach im Web Interface des Sticks eingestellt werden.




Umstellen des Profils auf home.vodafone.de


Doch dann stoßen wir bei der Nutzung des Sticks an der FritzBox bereits auf das zweite Problem. Die Internettelefonie funktioniert weder auf der FritzBox noch auf externen IP-Telefonen. Sperrt also Vodafone bei dem GigaCube SIMs die VOIP funktionalität, obwohl uns im Vodafone Shop versichert wurde, das Telefonie kein Problem sei? In der Tat, hat der GigaCube selbst sogar eine Telefondose!

Anschussmöglichkeiten des GigaCube

Test#1

Also erstmal weg mit dem Stick und testen wir das ganze erstmal auf dem originalen GigaCube. Auch hier funktioniert die Telefonie erstmal nicht. Nach dem einloggen in den Cube stellen wir allerdings fest, dass der GigaCube die absolut selbe Weboberfläche wie der Huawei SurfStick hat und in unserem Fall sogar die exakt gleiche Firmware Nummer!

Allerdings hat der GigaCube selbst wesentlich mehr Optionen. Hierbei fällt unser Blick sofort auf die Option SIP-ALG unter Sicherheit. Diese ist Standardmäßig eingeschaltet und scheint den SIP Port für ein eigenes Netz zu belegen. Also wird diese Option kurzerhand abgeschaltet und siehe da, VOIP funktioniert ohne Probleme!

Auswahl der Option, SIP-ALG und deaktivierung dieser

Problematik#2

Nun könnten wir natürlich den GigaCube an LAN1 der FritzBox anschließen und die Fritz so konfigurieren, dass die Internet als WAN unter diese Schnittstelle nutzt. Diese Option besitzen alle FritzBoxen. Jedoch bleiben dabei 2 Probleme:

1. Das ganze ist kein Failover mehr. Failover über WAN ist bei allen üblichen FritzBoxen die keine extra ausgeschriebene WAN Schnittstelle haben nicht unterstützt. Diese Lösung hällt zwar nun alle an der FritzBox angeschlossenen Geräte (Inkl. VOIP) im Internet, schaltet aber nicht wieder automatisch zurück auf DSL. Dies müsste manuell in der FritzBox umgeschaltet werden.

2. Da der GigaCube bei dieser Lösung ja nur extern an der FritzBox angesteckt ist, ist dieser trotzdem permanent im Internet. Der Flex Vertrag von Vodafone ist hierbei also unnütz, da trotzdem jeden Monat kosten auflaufen.

Mit dem Stick ist aber VOIP nicht möglich also was tun?

Lösung

Wie weiter oben beschrieben ist uns beim testen aufgefallen das der Vodafone GigaCube und die Huawei E3372 SurfSticks die selbe Firmware benutzen. Wieso gibt es beim GigaCube also mehr Optionen? Und: Gibt es keine Option alle funktionen des GigaCube freizuschalten?

Also testen wir erstmal naiv die URLs des GigaCubes im SurfStick zu nutzen. Eventuell sind ja nur die Links zu den jeweiligen Menüs ausgeblendet? So einfach wird es uns hier leider jedoch nicht gemacht. Also analysieren wir den Netzwerkvekehr und stellen fest, dass das Webinterface im Hintergrund API Aufrufe an sich selbst sendet. Eventuell haben die Entwickler ja die API Funktionalität beibehalten:

Also testen wir auf dem SurfStick mit einem gültigen Login Cookie folgenden Request, den wir vom GigaCube so ausgelesen haben:

GET /api/security/sip

Antwort:

<?xml version="1.0" encoding="UTF-8"?>
<request>
<SipStatus>1</SipStatus>
<SipPort>5060</SipPort>
</request>


ERFOLG!

Wie erwartet, funktionieren die API Aufrufe des GigaCube auch auf dem SurfStick, obwohl hier die Menü-Einträge und Benutzerinterfaces nicht implementiert wurden. Hierbei sehen wir auch, dass ähnlich zu dem GigaCube der SipStatus standardmäßig auf 1 steht. Diesen wollen wir nun auf 0 umkonfigurieren. Wie senden wir nun allerdings eine Änderung dieses Eintrages an die API?

Dies ist nicht ganz so einfach, da die Firmware hier nicht nur den Cookie, sondern auch noch einen eindeutigen Sicherheitstoken verwendet, um schadhafte Anfragen auszuschließen. Mit ein wenig stöbern im JavaScript, gibt es jedoch eine für jedermann einfach zu verwendende Maßnahme um diese Einstellung zu ändern. Hierbei sind keine Tools oder Packet-Logger notwendig, lediglich ein Browser mit JavaScript Console (Chrome/Firefox).

Howto

1. Öffnet das Web-Interface eures Huawei E3372 SurfSticks.
2. Loggt euch (Falls ein Web-Interface Passwort gesetzt wurde) ein.
3. Wechselt in den Reiter "Einstellungen"
4. Öffnet die JavaScript Konsole mit Strg+Shift+I
5. Ruft dort die API Request Methode des Web-Interfaces mit unserem GigaCube Payload aus:

newXmlString='<?xml version="1.0" encoding="UTF-8"?><request><SipStatus>0</SipStatus><SipPort>5060</SipPort></request>';
saveAjaxData('api/security/sip', newXmlString, function($xml)
{
    console.log(xml2object($xml));
});
Danach sollte in der Konsole das Debug.Log erfolgen, in welchem ihr erfahrt ob die Änderung erfolgreich war.

Das wars auch schon!

Ihr habt mit diesem Code, erfolgreich das SIP-ALG auf dem SurfStick deaktiviert, obwohl es diese Option dort eigentlich nicht geben sollte!




Keine Kommentare:

Kommentar posten