Unify- und Swyx-Tools repariert

Es wurde mal wieder Zeit für etwas Produktpflege auf meiner Webseite:

Bereits seit Ende des Jahres funktionierten meine Siemens-/Unify-Tools (Firmware-Tool und Config-Tool) nicht mehr. Ich hatte endlich mal die Zeit, mir das anzugucken und zu reparieren.

Für die Nerds unter Euch

Das Tool funktioniert grundsätzlich so:

  • Auf meiner Webseite läuft ein JavaScript, das macht seinerseits http-Abfragen (anfangs: AJAX) auf das Tischtelefon
  • Und sagt dem Tischtelefon darüber, welchen DLS-Server (nämlich meinen) es bitte kontaktieren möchte
  • (Und beim Suchlauf wartet es dann einen Moment, und fängt mit der nächsten IP wieder oben an)

Und das ist leider ein Katz- und Mausspiel mit den Browser-Herstellern:

  1. In der ersten Version habe ich tatsächlich die gleichen Scripte genommen, wie man sie auch für AJAX nehmen würde. Das Problem war: Meine Webseite ist https verschlüsselt, das Telefon ist es nicht (geht auch nicht, s.u.). Irgendwann hat Chrome angefangen (und die anderen später auch), AJAX-Verbindungen von einer https-Webseite auf http-Ziele zu verbieten
  2. Darum habe ich das Tool "vom Prinzip" geändert, statt AJAX wird jetzt ein (unsichtbarer) iFrame gestartet, und darüber die Verbindung aufgebaut. Hat ein Jahr gehalten, danach wurden http-Elemente auf einer https-Webseite auch verboten
  3. Also wieder das Tool geändert: Nach dem Ausfüllen des Formulares verlässt man meine primäre Webseite www.vollzeitnerd.de, wird statt dessen auf eine zweite URL tools.vollzeitnerd.de geleitet, und die ist gar nicht verschlüsselt. Also darf die auch per JavaScript auf weitere http-Elemente wie das Telefon zugreifen. Hat bis vor kurzem gehalten, jetzt sind selbst bei explizitem Aufruf von http:// viele Browser der Meinung, https zu erwingen
  4. Neuster Move ist also, dass ich auf der tools.vollzeitnerd.de-Seite per .htaccess-Regel einfach https-Aufrufe zwangsweise auf http umleite (eigentlich das Gegenteil dessen, was man sonst so machen würde).

Und damit geht's wieder.

Die Telefone könnten auch https. Aber das Zertifikat ist je nach Firmware längst abgelaufen. Es ist von Siemens/Unify für Eigenbedarf signiert worden und nie für öffentliche Browser-Nutzung. Und das Telefon hört ja nicht auf einen Domainnamen, sondern auf eine IP-Adresse (und die müsste dann in dem Zertifikat stehen. Kann sie aber nicht, die ist ja bei jedem Kunden eine andere, die Firmware aber ja die gleiche). Das würde also im besten Fall zu einer Warnung im Browser führen und bei einem Suchlauf über 256 IP-Adressen zu ganz vielen Klicks, die man als Anwender machen müsste (sofern es überhaupt geht, je nach Browser).

Übrigens: Es geht hierbei nur um die Kommunikation zwischen Deinem Browser und Deinem Tischtelefon. Und in dieser Kommunikation steht sinngemäß nur drin: Liebes Telefon, bitte verbinde Dich mit dem DLS-Server vom Vollzeitnerd. Dass das unverschlüsselt läuft, ist also völlig unkritisch. Die Verbindung vom Tischtelefon zu meinem DLS-Server, und damit auch die übertragenen Informationen sind dann wieder verschlüsselt.

    Feedback