Config-UI-X (homebridge-config-ui-x) mit SSL als Root in Debian

  • Mal ne kleine Anleitung (auf Debian für Root-Nutzer, wie mich):


    OpenSSL installieren:


    Code
    apt-get install openssl


    Anschließend wechselt ihr in das Verzeichnis, wo das Zertifikat liegen soll, bei mir root:


    Code
    cd /root/


    Jetzt erstellt ihr das Zertifikat:


    Code
    openssl req -newkey rsa:2048 -new -nodes -keyout key.pem -out csr.pem


    Und ergänzt die erforderlichen Angaben (das Fettgedruckte):


    Land:

    # Country Name (2 letter code) [AU]:DE


    Bundesland:

    # State or Province Name (full name) [Some-State]:Berlin


    Stadt:

    # Locality Name (eg, city) []:Berlin


    Firma (kann auch der Name rein):

    # Organization Name (eg, company) [Internet Widgits Pty Ltd]:Max Mustermann


    Abteilung (kann auch leer bleiben):

    # Organizational Unit Name (eg, section) []:


    Die Domain (hier localhost):

    # Common Name (eg, YOUR name) []:localhost


    E-Mail:

    # Email Address []:[email protected]


    Den restlichen Kram einfach leer lassen und mit Enter weiter:

     # Please enter the following 'extra' attributes

    # to be sent with your certificate request

    # A challenge password []:

    # An optional company name []: 


    Das wars schon, jetzt müssten 2 Dateien aufgetaucht sein, key.pem und csr.pem.


    Anschließend legen wir noch die passende server.crt an:


    Code
    openssl x509 -req -days 3650 -in csr.pem -signkey key.pem -out server.crt


    Jetzt noch in die config.json eintragen:


    Code
    "ssl": {
                    "key": "/root/key.pem",
                    "cert": "/root/server.crt"
                }


    Fertig ist config-ui-x mit SSL.


    Anschließend noch Homebridge neustarten.


    Code
    systemctl restart homebridge


    PS: Vergesst nicht, beim ersten Aufruf des WebIF müsst ihr http und https ändern, also https://ipdesservers:port :)



  • Mein Backup läuft jetzt für 2 Stunden, dann probier ich im Anschluss entsprechend Deiner Anleitung die Einrichtung für das SSL aus.

    Hatte ich eh schon seit Monaten vor mich mit zu beschäftigen und Dank Deines Anstoß ist es nun soweit. Vielen Dank schonmal für die gute Anleitung. :thumbup:

    Hilfreich?

  • Mein Backup läuft jetzt für 2 Stunden, dann probier ich im Anschluss entsprechend Deiner Anleitung die Einrichtung für das SSL aus.

    Hatte ich eh schon seit Monaten vor mich mit zu beschäftigen und Dank Deines Anstoß ist es nun soweit. Vielen Dank schonmal für die gute Anleitung. :thumbup:

    Da dauert das Neuaufsetzen ja kürzer, als ein Backup machen und einspielen. :P

  • ^^^^^^:thumbup:


    Bei mir dauert das Backup aufs NAS ca. 60 - 90 Sek von einem 8GB USB Stick.


    DJay Warum dauert es so lange?


    Edit: Marco Schmidt Habe dir die Trophäe „Anleitungen“ vergeben für deine Mühe. Glückwunsch ;)

  • Soo... hier alles wunderbar. Läuft einwandfrei, einfach der Anleitung Schritt für Schritt gefolgt.


    Einziger Hinweis vielleicht noch damit es keine Irritation gibt. Zumindest bei mir unter macOS Mojave, Safari 12.0.2 gab es noch ein paar Warnhinweise die einfach bestätigt und mit dem Admin Passwort des Mac bestätigt werden mussten. Danach bin ich wie gewohnt dann auf der Login-Seite von config-ui-x gelandet und konnte mich wie gewohnt einloggen.

    Danke nochmal Marco Schmidt . Somit habe ich meinen Vorsatz fürs neue Jahr schon erledigt und SSL eingerichtet. ;)



    Hilfreich?

  • Doch noch ein Problem... vom iPhone funktioniert es irgendwie gerade nicht mehr.

    Dort komme ich zwar auch auf die config-ui-x Seite, allerdings wird dort angezeigt, dass Homebridge nicht läuft.

    Was allerdings nicht stimmt. Denn über den Mac Safari geprüft, wird dort alles korrekt angezeigt und HomeKit reagiert wie gewohnt.


    Jemand eine Idee woran das am iPhone liegt? Auf iOS auch Verlauf und Websitedaten gelöscht, brachte nichts.



    Hilfreich?

  • Ja, das liegt daran, dass das Zertifikat selbst erstellt wurde. Daher der Warnhinweis. Einfach ignorieren und weiter. :)


    Ich vermute, daher kommt auch das Problem mit Safari auf dem iPhone, hm, ist mir noch nicht aufgefallen. Bei kostenlosen Zertifikaten ist aber der Umfang eher mau. Einige sind eher kurz gültig (30 Tage), andere kosten ohne Ende, was zumindest SSL für ein Homebastelprojekt nicht rechtfertigt.

  • Oh schade. Auf den Zugriff vom iPhone auf config-ui-x bin ich schon ein bisschen angewiesen/gewohnt.

    Dann muss ich SSL doch wieder raus nehmen. ;(


    Marco Schmidt Hattest Du weitere Information für SSL irgendwo recherchiert? Dann würde ich ggf. dort mal nachfragen, ob es Alternativen gibt.

    Kann ja irgendwie nicht sein, dass es am macOS Safari einwandfrei läuft und auf dem iPhone nicht richtig dargestellt wird.


    Ich gehe davon aus, wenn Du es an Deinem iPhone versuchst, sieht es genauso aus wie bei mir, als ob Homebridge nicht läuft. Tut es aber.

    Hilfreich?

  • Naja, ich finde das jetzt nicht so tragisch, die Geräte kann man über die Homekit-App bedienen und der Rest funktioniert über config-ui-x ja, Neustart, Config bearbeiten, etc.


    Ja, bei mir am iPhone sieht es genau so aus, ebenso am iPad.


    Man braucht wohl einen Proxyhost, siehe hier: https://github.com/oznu/homebridge-config-ui-x/issues/119


    Edit: Es gibt eine Anleitung, wie man ein Reverse-Proxy erstellt mit signierten Zertifikaten von Nginx. https://webcodr.io/2018/02/nginx-reverse-proxy-on-raspberry-pi-with-lets-encrypt/. Damit dürften die Probleme der fehlenden Websocketverbindung von iOS-Geräten gelöst werden können. Den ProxyHost trägt man dann in die Config des config-ui-x-Plugins ein. Vorteil ist klar, man hat dadurch ein von extern signiertes Zertifikat. Und jetzt kommt der entscheidende Nachteil, und da zitiere ich einfach mal aus der Anleitung (übersetzt mit Google-Translate):


    Code
    HINWEIS ZUR VORSICHT BEGINNEN
    
    Ihr Raspberry Pi wird an Port 80 für HTTP und Port 443 für HTTPS / TLS im Internet verfügbar sein. Ein potenzieller Angreifer kann Zugriff auf Ihr Netzwerk haben. Bitte stellen Sie sicher, dass Sie sich in Bezug auf Sicherheitsprobleme auf dem Laufenden halten und regelmäßig Updates installieren.
    
    Um Ihr Netzwerk zu schützen, empfehle ich ein isoliertes VLAN für Ihren Pi und die Webserver.
    
    Wenn Sie sich dabei unwohl fühlen, sollten Sie die Ausführung von Webservern in Ihrem Netzwerk, auf die von außen zugegriffen werden kann, erneut überlegen.


    Du siehst also DJay, irgendeinen Tod muss man sterben oder auch, die Wahl zwischen Pest und Cholera.


  • Vielen Dank für Deine Zeit die Du Dir für die weiteren Hintergrundinfos und die Alternative genommen hast. :thumbup:

    Also werde ich im neuen Jahr doch mal weiter an meinem guten Vorsatz festhalten und mich doch ausgiebiger mit dem Thema beschäftigen. ;)

    Hilfreich?

  • Hallo Leute,


    mir geht dieses Fenster mit "nicht sicher" wirklich langsam auf die nerven. Leider habe ich jetzt per suche nichts hierzu gefunden. Früher konnte man dieses doch auch im Plugin unter Einstellungen hinzufügen oder nicht? Finde den Reiter nicht mehr.

    Hat jemand zudem eventuell für mich so etwas wie eine Anleitung zum erstellen eines solches Zertifikates? Ich habe es mal versucht, leider hat das aber nicht geklappt und SSL ist noch etwas neuland für mich.


    Ich danke euch.

  • Hat jemand zudem eventuell für mich so etwas wie eine Anleitung zum erstellen eines solches Zertifikates?

    Homebridge-Tweaks