Ankündigung

Einklappen
Keine Ankündigung bisher.

Auerswald Compact 3000 Webzugriff

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Auerswald Compact 3000 Webzugriff

    Guten Morgen,
    ich nutze zuhause eine Auerswald Compact 3000 ISDN Telefonanlage. Die kann auf ein Mobilteil umleiten, was wir häufig nutzen. Bislang über einen App auf dem Handy. Smarter wäre es natürlich mit einem Knopf an der Haustür oder Abfrage der Bewegungsmelder. Die 3000er unterstützt, wenn auch nicht erwähnt die Befehle die bei Auerswald gelistet sind. Die Umschaltung per Webaufruf funktioniert auch:

    http://192.168.123.175/app_msn_aws_set?msnId=23&msnTyp=0&switchOnOff=1

    mit
    folgendem Ergebnis


    {"successful":true}

    Allerdings nur wenn ich mich vorab über das Webinterface angemeldet habe. Sobald ich abgemeldet bin habe ich keinen Zugriff mehr. Man muss sich also vorher anmelden.


    https://www.auerswald.de/de/develope...ng-api-de.html

    Bevor ein Befehl im ITK-System aufgerufen werden kann, ist ein Login zwingend erforderlich. Einzige Ausnahme stellt das Abfragen der Systeminformationen dar.

    Eine Autorisierung erfolgt über Digest Access Authentication (DAA) nach RFC 2617. Dabei läuft die Session-Wiedererkennung abseits der normal üblichen Digest-Implementierung. Sie erfolgt mittels eines Cookies AUERSessionID (15 Zeichen langer Wert) vom Webserver des ITK-Systems, im ersten erfolgreichen Login. Wird dieses Cookie von der Anwendung nicht übertragen, so fordert der Konfigurationsserver bei jedem Aufruf eine erneute Autorisierung mittels Digest Access Authentication. Hierbei ist zu beachten, dass dann eine weitere Session angelegt wird. Aktuell unterstützt die COMmander-6000-Serie und die COMpact 5000-Serie maximal 100 Sessions. Bei einer Überschreitung dieses Wertes werden die ältesten Teilnehmer-Sessions im Webserver des ITK-Systems gelöscht.

    Hat jemand eine Idee wie ich so etwas im Eibpc unterbringe?





    #2
    Schau dir mal die Webserver-Anfrage zum Schalten mit Wireshark an. Wird darin dann das Cookie mitgesendet? Eigentlich wäre ich der Meinung gewesen, dass man einfach die Digest Authentication bei jeder Anfrage mitsenden kann.
    Firma: Enertex Bayern GmbH, Ebermannstädter Straße 8, 91301 Forchheim
    Amazon: KNXnet/IP Router
    , KNXnet/IP Interface

    Kommentar


      #3
      Zitat von salixer Beitrag anzeigen
      dass man einfach die Digest Authentication bei jeder Anfrage mitsenden kann.
      Wie würde das denn im EibPC funktionieren. ich habe bislang noch einen Webaufruf im Code bei mir eingebaut?

      Kommentar


        #4
        Du musst das HTTP Get entsprechend dem mitgeschnittenen Paket in Wireshark aufbauen. Die Digest Athentication sollte ein Feld im HTTP-Header sein. Hier mal ein Beispielscreenshot, wie das in Wireshark aussieht:

        digest.png
        Firma: Enertex Bayern GmbH, Ebermannstädter Straße 8, 91301 Forchheim
        Amazon: KNXnet/IP Router
        , KNXnet/IP Interface

        Kommentar


          #5
          Ich habe gestern den Webcall mit Wireshark aufgezeichnet. Wie kann ich diesen am sinnvollsten hier bekannt machen Screenshot oder die Daten? Es wird dort der in der API genannte Cookie mit gesendet.

          Kommentar


            #6
            Hier der Auszug aus Wireshark, der Link funktionier nur mit dem richter Cookie. Sonst gibt es einen Error
            You do not have permission to view this gallery.
            This gallery has 1 photos.

            Kommentar


              #7
              In dem Fall muss man sich erst eine Session generieren und dann immer das Coockie mitschicken. Das wird dann schon deutlich komplexer.
              Firma: Enertex Bayern GmbH, Ebermannstädter Straße 8, 91301 Forchheim
              Amazon: KNXnet/IP Router
              , KNXnet/IP Interface

              Kommentar


                #8
                Könntest du mir dabei helfen das zu realisieren?

                Kommentar


                  #9
                  Ich kann dich da natürlich im Rahmen des normalen Forensupports unterstützen, aber eine komplette Anleitung kann ich leider nicht geben. Da müsste ich mich auch selbst erst einige Zeit mit beschäftigen.
                  Firma: Enertex Bayern GmbH, Ebermannstädter Straße 8, 91301 Forchheim
                  Amazon: KNXnet/IP Router
                  , KNXnet/IP Interface

                  Kommentar


                    #10
                    Um die Syntax erstmal zu verstehen habe ich etwas mit Wireshark beobachtet und dann mit Telnet probiert. Ich kann mich jetzt mit Telnet über Port 80 auf die Box einloggen, den Cookie generieren und dann auch die Leitung umstellen.

                    Also zunächst mit Telnet auf Port 80 verbinden

                    Code:
                    open 192.168.123.175 80
                    folgendes zur Box senden

                    Code:
                    POST /login_json HTTP/1.1
                    Host: 192.168.123.175
                    Referer: http://192.168.123.175/statics/page_portal.htm
                    X-Requested-With: XMLHttpRequest
                    X-Prototype-Version: 1.7
                    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
                    Content-Length: 71
                    Connection: keep-alive
                    
                    LOGIN_NOW=&eksservernumber=&eksname=&LOGIN_NAME=admin&LOGIN_PASS=111111
                    das gibt als Antwort

                    Code:
                    200 OK
                    Server: GoAhead-Webs
                    Expires: 0
                    Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
                    Pragma: no-cache
                    Content-Type: text/html; charset=iso-8859-1;
                    Set-Cookie: AUERSessionID=DFFNSHWQYVSNAIH
                    Set-Cookie: AUERWEB_COOKIE=admin
                    
                    {"login":1,"dongleState":0,"dongleError":1}
                    so, jetzt haben wir die session id mit der wir den Befehl senden können

                    Code:
                    GET /app_msn_aws_set?msnId=5610&msnTyp=0&switchOnOff=1 HTTP/1.1
                    Host: 192.168.123.175
                    Cookie: AUERSessionID=PSUYQLEMSIXHBOJ; AUERWEB_COOKIE=admin
                    Connection: keep-alive
                    Upgrade-Insecure-Requests: 1
                    die session natürlich immer anpassen. danach noch abmelden

                    Code:
                    POST /appclose HTTP/1.1
                    Host: 192.168.123.175
                    Referer: http://192.168.123.175/statics/page_portal.htm
                    X-Requested-With: XMLHttpRequest
                    X-Prototype-Version: 1.7
                    Content-Type: application/x-www-form-urlencoded; charset=UTF-8
                    Content-Length: 0
                    Cookie: AUERSessionID=PSUYQLEMSIXHBOJ; AUERWEB_COOKIE=admin
                    Connection: keep-alive
                    fertig. vor jedem befehl musste ich open 192.168.123.175 80 neu eingeben.

                    Wie bekomme ich jetzt soetwas in den eibPC. Einfach eine TCP Verbindung öffnen und den Text oben in einen String legen?
                    Zuletzt geändert von fuchs; 23.01.2017, 23:10.

                    Kommentar

                    Lädt...
                    X