Zum Inhalt springen
labkompass

Guides · Netzwerk

Home Assistant über Tailscale erreichen: Fernzugriff ohne offene Ports

Home Assistant sicher von unterwegs bedienen — ohne Portweiterleitung, ohne eigene Domain: Tailscale als Add-on oder auf dem Host einrichten, per MagicDNS zugreifen, HTTPS über Tailscale Serve und die Companion-App richtig konfigurieren.

Von Niclas Hennrich · Veröffentlicht: · 5 Min. Lesezeit


Kurz gesagt: Tailscale ist der einfachste sichere Weg zu Home Assistant von unterwegs: kein offener Port, keine Portweiterleitung, keine eigene Domain. Unter Home Assistant OS installierst du das Tailscale-Add-on und meldest es in deinem Konto an; auf dem Smartphone läuft die Tailscale-App — danach erreichst du dein Dashboard unter der Tailscale-Adresse der Instanz auf Port 8123, auf Wunsch mit HTTPS über Tailscale Serve.

Der Klassiker: Home Assistant läuft, das Dashboard ist zuhause perfekt — und unterwegs kommst du nicht dran, weil dein Anschluss hinter CGNAT hängt oder du zu Recht keinen Port ins Internet öffnen willst. Genau diese Lücke schließt Tailscale: ein WireGuard-basiertes Overlay-Netz, in dem deine Geräte sich gegenseitig erreichen, als wären sie im selben LAN. Warum das technisch funktioniert und wie es sich von purem WireGuard unterscheidet, erklärt unser Vergleich Tailscale vs. WireGuard — hier geht es um die konkrete Einrichtung.

Voraussetzungen #

  • Eine laufende Home-Assistant-Instanz — egal ob auf Pi, Mini-PC oder als Proxmox-VM (die Optionen vergleicht der Hardware-Guide).
  • Ein kostenloses Tailscale-Konto (der Personal-Plan reicht fürs Homelab locker; angemeldet wird über einen bestehenden Identitätsanbieter wie Google, GitHub, Apple oder Microsoft).
  • Die Tailscale-App auf dem Smartphone (Android/iOS).

Kein Router-Zugriff nötig, keine öffentliche IP, kein DynDNS — das erledigt das Overlay-Netz.

Weg 1: Home Assistant OS — das Tailscale-Add-on #

Der Standardweg für alle, die HAOS fahren:

  1. Einstellungen → Add-ons → Add-on Store — das Community-Add-on Tailscale installieren.
  2. Add-on starten und ins Log schauen: Dort erscheint ein Login-Link, über den du das Gerät deinem Tailscale-Konto hinzufügst.
  3. In der Tailscale-Admin-Konsole taucht die Instanz jetzt als Gerät mit einer 100.x.y.z-Adresse auf.
  4. Key Expiry deaktivieren: In der Konsole beim HA-Gerät Disable key expiry wählen — sonst verlangt Tailscale nach einigen Monaten eine neue Anmeldung, und der Fernzugriff fällt genau dann aus, wenn du nicht zuhause bist.

Damit ist der Kern fertig: Von jedem Gerät in deinem Tailnet erreichst du Home Assistant unter http://<100.x-Adresse>:8123.

Weg 2: Home Assistant im Docker-Container #

Läuft Home Assistant als Container, gibt es kein Add-on-System — dann gehört Tailscale auf den Host (Installation per Paketmanager oder Install-Skript, danach tailscale up). Der Host wird Mitglied des Tailnets, und Home Assistant ist über die Tailscale-Adresse des Hosts auf Port 8123 erreichbar. Ein separater Tailscale-Sidecar-Container ist möglich, bringt für diesen Zweck aber nur zusätzliche Komplexität.

MagicDNS: Namen statt 100.x-Adressen #

In der Tailscale-Konsole unter DNS lohnt sich MagicDNS: Jedes Gerät bekommt einen Namen, und aus http://100.87.23.45:8123 wird http://homeassistant:8123 — auf jedem deiner Geräte, ohne eigene DNS-Einträge. Für den Alltag mit mehreren Geräten ist das der Unterschied zwischen „merken" und „nachschlagen".

HTTPS mit Tailscale Serve — und warum nicht Funnel #

Für den Anfang reicht http:// — der Transport läuft ohnehin durch den verschlüsselten WireGuard-Tunnel. Zwei Gründe sprechen trotzdem für echtes HTTPS: Browser-Warnungen verschwinden, und Funktionen, die Secure Context voraussetzen, funktionieren sauber.

Die eingebaute Lösung ist Tailscale Serve: Es stellt Home Assistant unter https://homeassistant.<dein-tailnet>.ts.net mit gültigem Zertifikat bereit — erreichbar nur innerhalb deines Tailnets. Das Add-on bringt dafür eine Proxy-Option mit; aktiviere zusätzlich HTTPS in der Tailnet-Konfiguration (DNS → HTTPS Certificates).

Ein Konfigurationsschritt gehört zwingend dazu: Der Serve-Weg ist aus HA-Sicht ein Reverse Proxy, und Anfragen von einem Proxy, den Home Assistant nicht kennt, beantwortet es mit 400 Bad Request. Deshalb in der configuration.yaml den Proxy des Add-ons als vertrauenswürdig eintragen und HA neu starten:

http:
  use_x_forwarded_for: true
  trusted_proxies:
    - 172.30.33.0/24 # Add-on-Netz von Home Assistant OS

Davon zu unterscheiden ist Tailscale Funnel: Es würde die Instanz öffentlich aus dem Internet erreichbar machen. Für ein Smart-Home-Backend mit Zugriff auf Schlösser, Kameras und Anwesenheitsdaten ist das die falsche Richtung — der ganze Punkt dieses Setups ist ja, nichts öffentlich zu exponieren. Ein Exit Node ist für den HA-Zugriff ebenfalls nicht nötig; das Thema wird erst interessant, wenn du unterwegs deinen gesamten Datenverkehr über zuhause leiten willst.

Die Companion-App einrichten #

Auf dem Smartphone:

  1. Tailscale-App installieren, mit demselben Konto anmelden, VPN aktivieren. Tailscale hält die Verbindung im Hintergrund und verbraucht im Leerlauf kaum Akku.
  2. In der Home-Assistant-App als Server-Adresse die Tailscale-Adresse eintragen — je nach Setup http://homeassistant:8123 (MagicDNS), die 100.x-Adresse oder die https://…ts.net-Adresse (Serve).

Praktisches Detail: Die HA-App kann interne und externe URL getrennt führen. Als interne URL bleibt die LAN-Adresse, als externe die Tailscale-Adresse — dann funktioniert der Zugriff zuhause direkt und unterwegs durch den Tunnel.

Zugriff einschränken mit ACLs #

Standardmäßig darf in einem frischen Tailnet jedes Gerät jedes andere erreichen. Für ein Ein-Personen-Tailnet ist das akzeptabel; spätestens wenn Geräte von Familienmitgliedern oder ein geteilter Server dazukommen, lohnen ACLs (Konsole → Access Controls): eine Regel, die den Zugriff auf die HA-Instanz auf deine eigenen Geräte und Port 8123 begrenzt. So bleibt ein verlorenes oder kompromittiertes Tailnet-Gerät ein begrenzter Schaden.

Sicherheit: was dieses Setup leistet — und was nicht #

Gewonnen: kein offener Port, kein Passwort-Login aus dem Internet erreichbar, Transport Ende-zu-Ende verschlüsselt, funktioniert hinter CGNAT/DS-Lite.

Bleibt deine Aufgabe: Das Tailscale-Konto ist jetzt der Generalschlüssel — sichere den Identitätsanbieter-Account mit Zwei-Faktor-Authentifizierung. In Home Assistant selbst gehören weiterhin starke Passwörter und 2FA aktiviert, und Updates bleiben Pflicht: Der Tunnel schützt den Weg, nicht die Anwendung.

Fehlerdiagnose #

Wenn der Zugriff nicht klappt, in dieser Reihenfolge prüfen:

  1. Tailscale auf beiden Seiten verbunden? Smartphone-App aktiv, Gerät in der Konsole „Connected"?
  2. Key abgelaufen? Geräteliste prüfen — für die HA-Instanz Key Expiry deaktivieren (siehe oben).
  3. MagicDNS-Problem? Zum Gegentest die 100.x-Adresse direkt verwenden. Funktioniert sie, liegt es an DNS, nicht am Tunnel.
  4. ACL im Weg? Falls du Access Controls angepasst hast: Erreicht dein Gerät die HA-Instanz auf Port 8123 laut Regelwerk?
  5. HA selbst? Im LAN http://<lokale-IP>:8123 testen — antwortet die Instanz lokal nicht, ist es kein Tailscale-Thema.
  6. „400 Bad Request"? Taucht auf, wenn ein Reverse Proxy im Spiel ist, den Home Assistant nicht kennt — beim Serve-Weg also trusted_proxies wie oben gezeigt setzen (und HA neu starten). Beim direkten Zugriff über die 100.x-Adresse oder MagicDNS tritt das nicht auf.

Einordnung: Tailscale oder doch WireGuard auf der Firewall? #

Tailscale löst genau ein Problem maximal bequem: meine Geräte erreichen meine Dienste, egal wo ich bin. Wer ohnehin eine OPNsense betreibt und den Tunnel lieber selbst kontrolliert — ohne Koordinationsserver eines Anbieters —, fährt mit WireGuard auf der OPNsense genauso sicher, investiert dafür aber mehr Einrichtung. Die Abwägung im Detail: Tailscale vs. WireGuard.

Häufige Fragen

Wie richte ich Tailscale für Home Assistant ein?
Unter Home Assistant OS installierst du das Community-Add-on „Tailscale“, startest es und meldest das Gerät über den Login-Link im Add-on-Log in deinem Tailscale-Konto an. Danach ist Home Assistant von jedem deiner Tailscale-Geräte unter seiner Tailscale-Adresse auf Port 8123 erreichbar — ohne Portweiterleitung im Router. Läuft Home Assistant im Docker-Container, installierst du Tailscale stattdessen direkt auf dem Host.
Brauche ich für Tailscale eine Portweiterleitung im Router?
Nein — das ist der Kernvorteil. Beide Seiten bauen ausgehende Verbindungen zum Tailscale-Netz auf; NAT-Traversal handelt die Direktverbindung aus. Es bleibt kein Port im Internet offen, auch hinter CGNAT oder DS-Lite funktioniert der Zugriff.
Wie bekomme ich HTTPS für Home Assistant über Tailscale?
Über Tailscale Serve: Das Add-on kann Home Assistant unter einem Namen wie https://homeassistant.<tailnet>.ts.net mit gültigem Zertifikat bereitstellen — erreichbar bleibt die Adresse nur innerhalb deines Tailnets. Tailscale Funnel würde die Instanz dagegen öffentlich ins Internet stellen; für ein Smart-Home-Backend ist das die falsche Wahl.
Was trage ich in der Home-Assistant-App als Server-Adresse ein?
Die Tailscale-Adresse deiner Instanz — mit MagicDNS z. B. http://homeassistant:8123, ohne MagicDNS die 100.x-Adresse mit Port 8123, mit Tailscale Serve die https-ts.net-Adresse. Wichtig: Auf dem Smartphone muss die Tailscale-App installiert und verbunden sein, sonst ist die Adresse ins Leere gegriffen.
Home Assistant ist über Tailscale nicht erreichbar — woran liegt es?
Die häufigsten Ursachen der Reihe nach: Tailscale auf dem Smartphone nicht verbunden; der Schlüssel des Servers ist abgelaufen (Key Expiry für das HA-Gerät in der Tailscale-Konsole deaktivieren); MagicDNS-Name funktioniert nicht (zum Test die 100.x-IP direkt probieren); eine ACL blockiert den Zugriff auf Port 8123; oder Home Assistant selbst ist nicht auf 8123 erreichbar (lokal gegentesten).

Weiterlesen