Ich schalte und sonst niemand! D1 Mini nur für die Homebridge erreichbar machen.

  • Guten Tag,


    ich habe mich schon länger mit dem Thema Sicherheit beschäftigt. Das wichtigste für mich war, dass keine anderen Nutzer im Netzwerk über den Link (z.B. http://esp8266.local/relay_on/) meine Lampen schalten können. Nun habe ich es hinbekommen, dass nur ich und die Homebridge etwas bei dem D1 Mini schalten können. Diese Lösung möchte ich nun mit euch teilen.


    In allem kann man sagen, dass wir einfach auf diesem Video aufbauen: ESP8266 Relais mit Siri steuern - Homebridge Tutorial deutsch



    D1 Mini

    Beim D1 Mini können wir einfach das Skript WLAN-Relais mit dem ESP8266 und HTTP-API erweitern.


    Über dem Setup-Teil definieren wir zwei Variablen.

    Code: simple_http_switch.ino
    1. const char* www_username = "switch";
    2. const char* www_password = "123456";

    Beim dem Username und Passwort sollt ihr natürlich sichere Daten verwenden.

    Jetzt haben wir einen Username, und ein Passwort vergeben.


    Anschließend muss jetzt noch bei einem Aufruf, eine Abfrage erscheinen.

    Code: simple_http_switch.ino
    1. server.on("/relay_on", []() {
    2. if(!server.authenticate(www_username, www_password)) {
    3. return server.requestAuthentication();
    4. }
    5. server.send(200, "text/plain", "relay on");
    6. relay_on();
    7. });


    Wenn jetzt der Link (/relay_on) aufgerufen wird, dann erscheint eine Abfrage. Mit dem D1 Mini sind wir jetzt fertig. Natürlich muss die Abfrage auch noch bei relay_off eingerichtet werden. Beim state ändert ihr nichts, weil der ja nix ausführt.



    Homebridge


    Nun geht es an die Homebridge. Allerdings verwende ich ein anderes Plugin, welches eine Authentication Funktion mitbringt. Das Plugin

    Nicht vergessen das Plugin zu installieren.


    Bei den accessories bauen wir jetzt einfach einen Switch ein.


    Nun läuft die ganze Geschichte etwas sicherer. Und niemand sonst schaltet deine Lampen.


    Fragen könnt ihr gerne stellen, ich gebe mein Bestes.



    Viele Grüße


    Jan

  • Fun Fact: In meiner privaten Homebridge nutze ich auch dieses Plugin.

    Dabei hab ich aber noch nie Gebrauch vom http_auth gemacht.


    Fürs Tutorial hab ich blöderweise das erstbeste genommen. :rolleyes:

    Wenn es in Ordnung ist, werde ich 'nen Kommentar unter meinem Video schreiben und den dann anpinnen - mit Verlinkung auf dein Tutorial natürlich.


    Dickes Dankeschön für dieses Tutorial. 8):thumbup: Wusste nicht, dass das so einfach geht.

    Damit revidiere ich natürlich meine Schwachsinnige Antwort auf deine Frage. :D

    Btw: Das Plugin homebridge-http-webhooks unterstützt auch http_auth

    Das Plugin unterstützt nicht nur Switches, sondern auch Sensoren, Lampen, und und und.


    Im Zuge dessen kannst du deine Frage ja editieren und einen Hinweis auf auf dein Tutorial geben sowie das Thema als [ ] erledigt markieren.



    Pascal