Home Assistant ist eine leistungsstarke Plattform zur Steuerung deines Smart Homes. Doch wenn du den Remote Zugriff ermöglichst, solltest du unbedingt Sicherheitsmaßnahmen ergreifen. Hacker und unbefugte Zugriffe können erhebliche Probleme verursachen. In diesem Beitrag erfährst du, wie du den Remote Zugriff von Home Assistant absichern kannst.
Inhaltsverzeichnis
Für alle Lesefaulen gibt es das Ganze natürlich auch als YouTube-Video von mir 😉
Benutzerrechte einschränken
Nicht jeder Benutzer in deinem Home Assistant-System benötigt volle Administratorrechte. Du solltest Rollen und Berechtigungen gezielt vergeben.
- Lege separate Benutzerkonten an.
- Vergib eingeschränkte Rechte für nicht-administrative Nutzer.
- Aktiviere Gästekonten nur bei Bedarf und entferne sie wieder, wenn sie nicht mehr gebraucht werden.
Je weniger Personen Zugriff auf kritische Einstellungen haben, desto sicherer ist dein System.
Du magst Home Assistant? Dann abonniere kostenlos meine Beiträge mit Tipps, Tricks und Anleitungen rund um Home Assistant:
Follow Home Assistant
Garantiert kein Spam, keine Werbung und immer mit Abmelde-Link, solltest du es dir anders überlegen!
Was es mit Benutzern und Personen in Home Assistant auf sich hat, habe ich in dem folgenden Beitrag ausführlich erklärt:
Starke Passwörter nutzen
Ein starkes Passwort ist der erste Schutz gegen unbefugte Zugriffe. Verwende:
- Mindestens 12 Zeichen (bzw. je länger, desto besser ;))
- Eine Kombination aus Groß- und Kleinbuchstaben, Zahlen und Sonderzeichen
- Keine leicht erratbaren Begriffe wie „HomeAssistant123“
- Unterschiedliche Passwörter für verschiedene Dienste
Ein Passwort-Manager hilft dir, sichere Passwörter zu generieren und zu verwalten.
Multi-Faktor-Authentifizierung (MFA) aktivieren
Zusätzlich zu einem starken Passwort solltest du die Multi-Faktor-Authentifizierung (MFA) aktivieren. Dies erhöht die Sicherheit erheblich, indem ein zusätzlicher Code aus einer Authentifizierungs-App (wie Google Authenticator oder Authy) erforderlich wird.
So aktivierst du MFA in Home Assistant:
- Gehe in die Einstellungen unter „Benutzer“.
- Wähle deinen Benutzer aus.
- Aktiviere MFA und scanne den QR-Code mit einer Authenticator-App.
- Bestätige die Einrichtung mit dem generierten Code.
Ich persönlich nutze Aegis MFA auf Android als MFA-App.
HTTP-Ban nutzen
Home Assistant bietet eine Funktion namens HTTP-Ban, die automatisch IP-Adressen sperrt, nach zu vielen fehlgeschlagenen Login-Versuchen. So richtest du es ein:
Füge folgende Zeilen in deine configuration.yaml
ein:
http: ip_ban_enabled: true login_attempts_threshold: 5
Speichere die Datei und starte Home Assistant neu.
Jetzt wird eine IP-Adresse nach fünf fehlgeschlagenen Login-Versuchen automatisch gesperrt.
Automatische Benachrichtigungen bei fehlerhaften Loginversuchen
Um frühzeitig auf unbefugte Zugriffe aufmerksam zu werden, solltest du dir Benachrichtigungen bei fehlgeschlagenen Loginversuchen schicken lassen.
Füge dies in deine automations.yaml
ein bzw. erstelle eine Automation mit folgendem Inhalt:
alias: Failed Login Benachrichtigung description: "" triggers: - update_type: added trigger: persistent_notification conditions: - condition: template value_template: > {% set message = trigger.notification.message %} {{'Too many login attempts' in message or 'invalid authentication' in message or 'login attempt' in message}} actions: - data: title: | {% set title = trigger.notification.title %} ⚠️{{title}}⚠️ message: > {% set message = trigger.notification.message %} {% set now = now().strftime('%d %b: %X') %} {% if 'Too many login attempts' in message %} Login notification: {{now}}: {{message}} {% elif 'invalid authentication' in message or 'login attempt' in message %} Login notification: {{now}}: {{message}} Track offending ip on http://www.ip-tracker.org/locator/ip-lookup.php?ip={{message.split('from ')[1]}} {% else %} Login notification other: {{now}}: {{message}} {% endif %} action: notify.mobile_app_pixel_8_pro
Dadurch bekommst du eine Nachricht auf dein Smartphone, wenn jemand einen fehlerhaften Loginversuch macht.
URL geheim halten
Vermeide es, die URL deines Home Assistant-Servers in öffentlichen Foren oder sozialen Medien zu teilen. Nutze stattdessen eine nicht leicht erratbare Subdomain oder dynamische DNS-Dienste mit individuellen Namen.
Updates zeitnah installieren
Regelmäßige Updates sind essenziell, um Sicherheitslücken zu schließen. Achte darauf, dass:
- Home Assistant auf dem neuesten Stand ist.
- Alle installierten Add-ons und Integrationen aktuell sind.
- Dein Betriebssystem (Raspberry Pi OS, Docker, etc.) regelmäßig aktualisiert wird (sofern kein Betrieb nativ auf dem Raspberry Pi).
Updates enthalten oft wichtige Sicherheitsfixes, die dich vor neuen Bedrohungen schützen.
Fazit zur Absicherung des Remote Zugriff von Home Assistant
Die Absicherung des Remote-Zugriffs auf Home Assistant ist kein Hexenwerk, aber essentiell, um dein Smart Home zu schützen. Indem du Benutzerrechte beschränkst, starke Passwörter wählst, MFA aktivierst, HTTP-Ban nutzt, Benachrichtigungen einrichtest, die URL geheim hältst und Updates installierst, kannst du dein System erheblich sicherer machen.
Setze diese Tipps um, und dein Home Assistant bleibt gegen unbefugte Zugriffe bestmöglich geschützt!
Produktempfehlungen
Danke für die schnelle Antwort 👍
Kann es sein, dass bei der ‚automatischen Benachrichtigung‘ – neben anzupassendem notify-Ziel in der letzten Zeile – noch andere Parameter anzupassen / zu ergänzen sind?Nach Ersatz des YAML-Codes in einer neu angelegten Automatisierung und entsprechender Anpassung vom notify-Ziel kommt beim Ausführen als Fehlermeldung
Fehler beim Ausführen einer Aktion
Error rendering data template: UndefinedError: ‚trigger‘ is undefined
Im UI der Automatisierung ist der Trigger ohne Benachrichtigungs-ID.
Ich hätte wenigstens eine – wenn auch falsche – Signalsierung in der App erwartet.
Irgendwelche Vorschläge oder Hinweise?
P.S.: zum http-Bann: ist der letzte Satz ‚jetzt wird eine IP-Adresse nach fünf fehlgeschlagenen Login-Versuchen automatisch gesperrt‘ als permanente Sperre zu verstehen oder erfolgt nach einer Zeit x eine Entsperrung – wenn permanent: wie könnte die Sperre wieder zurückgesetzt werden?
@wobeco Nein, die Fehlermeldung
sagt tatsächlich, was genau das Problem ist: da du die Automation manuell auslöst, gibt es keinen regulären Trigger, so dass der Template-Code nicht funktionieren kann.
Rufe dein HA in einem Inkognito-Fenster vom Browser auf und nutze falsche Zugangsdaten, dann bekommst du die gewünschte Fehlermeldung per Push.
Der HTTP-Ban ist dauerhaft, außer du löschst die gebannte IP aus der Datei ip_bans.yaml