Zugriff von außen auf Home Assistant im Heimnetz

Es gibt 31 Antworten in diesem Thema, welches 15.860 mal aufgerufen wurde. Der letzte Beitrag () ist von SmilyHM.

  • Ich gehe lieber über den Proxy, das ist sicherer und übersichtlicher auf Dauer. Danke. :smiling_face:

    Sicherer als nen VPN?!

  • Sicherer als nen VPN?!

    Nein, aber darum ging es ja nicht. Es ging darum den HA von außen zu so komfortabel und sicher wie möglich zu erreichen.

  • Ja korrekt.


    Aber es gibt da bei mir trotzdem ein Problem mit den Ports.


    Portweiterleitung geht über 80,443 an den Proxy.
    Dieser wiederrum leitet dann an den https://xxx.xxx.xxx.xxx:8123 weiter.

    Und genau hier liegt dann das Problem :frowning_face:

    Denn es existiert ja praktisch nur ein Port 80 und ein 443 nach aussen. Somit kommt ein "400, Bad request". :frowning_face:


    Hier meine HOST-config im Proxy:



    --> Let´s Encrypt Zertifikat ist gültig. :smiling_face:

    2 Mal editiert, zuletzt von TheFreeman ()

  • Scheme ist http und nicht https, dann klappts auch. Hat nichts mit den Ports zu tun.


    EDIT: ach ja, es macht keinen Sinn in den Screenshots oder Text die interne IP zu schwärzen da die eh nur intern erreichbar ist. Da ist es eher pfiffiger die Domain zu schwärzen. Ich war mal so frei und habe die Seite aufgerufen, da scheint auch noch was nicht korrekt eingerichtet zu sein, die leiten auf eine Seite von Strato weiter und nicht auf deinen Proxy.

    Einmal editiert, zuletzt von jkasten ()

  • OK, ich versuche das umzustellen. Danke.

    Die Umleitung passiert deswegen, da ich gerade am Probieren mit der DynDNS bin.

    Anscheinend lässt die UPD Pro nur einen eintrag für eine DynDNS zu :frowning_face:

    Ich möchte aber mehrere Domains mit der IP versehen und ein CNAME ist ja nur n Alias, der dann im SSL nicht mehr gilt.

  • Es reicht auch ein Eintrag im Dyndns. Du erstellst einfach CNAMEs und gibst als ziel deine Dyndns Adresse an. den Rest macht der Proxy.


    als Beispiel: Domain ist thefreeman.de


    im DNS stellst Du dann CNAME auf homeassistant und Ziel auf deine Dyndnsadresse.


    und genau so kannst du das dann mit jeder weiteren Adresse machen.

  • Hmm... ok.

    Ich habe gerade in den Specs von DynDNS gelesen, dass Kommagetrennte hostnames zulässig sind im API-Call.

    Dann habe ich ja etwas zu tun. Danke schon mal, ich bekomme das schon irgendwie zum Laufen. :smiling_face:


    OK, also aus HTTPS macht der Proxy kein HTTP. Kann auch nicht gehen. :smiling_face:

    Das heisst, ich habe nun ein Problem mit dem Homeassistant, da ich im Docker-Container kein Gültiges Zertifikat erzeugen kann. :frowning_face:

    Oder kann man das aus dem Proxy irgendwie durchreichen? Wahrscheinlich nicht, oder?

    Einmal editiert, zuletzt von razor () aus folgendem Grund: Ein Beitrag von TheFreeman mit diesem Beitrag zusammengefügt.

  • ....im Proxy nur schema auf http ändern und mehr nicht. Wenn Du dann deine dyndnsadresse aufrufst sollte dein HA kommen.



    EDIT: https und Zertifikat macht dein Proxy und nicht der HA. Lass den mal in Ruhe.


    Du brauchst nur eine einzige Dyndns Adresse mehr nicht. Die trägst Du bei Strato als Ziel bei den CNAMEs ein. Nichts mit Komma getrennt usw.

  • Jup, ich habe das Problem gefunden.

    Es lag an der restriktiven Art von Homeassistant.

    Man muss in der Konfig noch ein paar Zeilen einfügen:


    Code
    http:
      use_x_forwarded_for: true
      trusted_proxies:
        - 192.168.0.0/24
        - 172.17.0.0/24

    Nun geht´s. YEAH! :smiling_face:


    Auch ist es gut zu wissen, dass man im DynDNS-Eintrag in der UDM Pro mehrere Hostnamen hinterlegen kann, indem man sie durch ein Komma trennt. :smiling_face:

  • Perfekt! Du brauchst eigentlich nur einen Dyndns Eintrag, den Rest machst du ja über cnames und den proxy.

  • Hallo Zusammen,


    ich habe auch gerade den ReverseProxy eingerichtet und ich komme über den Browser auch auf den HomeAssistant wenn ich meine ddnss.de-Adresse eingebe (inkl. LE-Zertifikat).


    In der Home Assistant App bekommei ich aber keine Verbindung. Er öfffnet dann den Browser und es kommt Unable to connect to Home Assistant.


    Er scheint also bis zum HA zu kommen, da aber abgewiesen zu werden?


    EDIT:


    Ich habe bei Nginx mal was rumprobiert, und wenn ich "SSL erzwingen" ausschalte, dann geht es.


    Was habe ich dadurch für Nachteile? Hebelt das die Sicherheit von dem Reverse Proxy aus?

    Einmal editiert, zuletzt von Rockhound53 ()

  • Ich versuche mich mal etwas dranzuhängen :winking_face:


    Bin auch frisch auch Home Assistant umgezogen. Da ich die Alexa (ohne Home Assistant Cloud) verwenden möchte, muss ich 443 weiterleiten (zumindest ist mein Stand, dass aus Lambda, etc. heraus ein anderer Port verwendet werden kann - beim Skill-verbinden lande ich ohne 443 immer auf Error).


    Du hast ja scheinbar auch eine eigene Domain. Bei mir ist die Portfreigabe von ANY 443 an Home-Assistant-IP 443 eingerichtet. Die NGINX-Konfiguration: Container 443 an Host 443.

    Die LE-Zertifikate liegen in /ssl --> LE speichert die standardmäßig in einem Pfad unter LE --> ggf. liegt da schon das Problem?


    Ansonsten unter Home Assistant --> Einstellungen (Sidebar) --> Einstellungen --> Allgemein --> "Externe URL" und "Interne URL" richtig gefüllt? Wenn Deine App mit dem genannten Fehler startet, sollte Sie Dir auch die Auswahl bieten, die interne/externe URL zu bearbeiten --> damit die App weiß, wie sie versuchen soll die Verbindung herzustellen.


    In der configuration.yaml sollte so etwas eingetragen sein:


    # Konfiguration für NGINX
    http:
    use_x_forwarded_for: true
    trusted_proxies:
    - 172.30.33.0/24


    Denk dran, dass die LE relativ kurz ablaufen und aktualisiert werden müssen. Wenn Du das nicht automatisiert hast, dann gibt's auch eine Integration in HA, welche den Status checkt. Cert checker o.ä. (in der deutschen Übersetzung heißt es "Zertifikatsablauf"). Kannste ins Lovelace paken, um Dir die Restgültigkeit anzeigen zu lassen und/oder natürlich auch eine Automatisierung, etc. draufsetzen.


    Bei mir läuft es damit 1a --> jetzt kommt das ABER: Das Port-Forwarding der UDMP (für 443) funktioniert so im Dreh 3 bis 4 Tage, danach läuft alles von extern auf "nicht erreichbar". Nur Restart der Console hilft - was ja aber so eher nicht wünschenswert ist. Habe den Support jetzt mal angeschrieben und schaue mal, ob mir geholfen werden kann. Spannend ist, dass man das Support-File mitsenden soll. Das habe ich natürlich erwartet, aber es hat etwas über 50 MB und UI scheint diese Dateigröße nicht entgegennehmen zu können und ein Upload über das Support-Tool ist auch nicht möglich... Naja, hab es jetzt mit PW-Schutz und öffentlicher Freigabe über google-drive versucht. Auch, wenn sich das eigentlich irgendwie nicht gut anfühlt...


    Sollte jemand von euch nen heißen Tipp haben - natürlich gern her damit. Ich habe nur zwei Portweiterleitungen. Die zweite (TeamSpeak-Port) geht von ANY 9987 (UPD) an IP xyz 9987. Und diese läuft konstant einwandfrei durch - auch wenn 443 schon wieder "über den Jordan" ist.


    Hoffe, ich konnte Dir ggf. etwas helfen und vielleicht hat ja auch jemand einen Tipp für mich :smiling_face:


    Viele Grüße

    Sascha