Wenn du deine Zendure SolarFlow Speicherlösung ebenfalls von der Cloud befreit hast, wirst du wahrscheinlich einen MQTT Broker mit anonymen Logins eingerichtet haben, um an die Sensor-Messwerte zu gelangen.
In diesem Artikel möchte ich dir zeigen, wie du an das hardcoded Passwort deines SolarFlow Geräts gelangst. Getestet habe ich das Verfahren mit einem Hub 2000, mit ein bisschen Glück funktioniert es auch bei den anderen Geräten.
Vorgehensweise#
1. Device ID#
Wenn du deinen SolarFlow bereits aus der Cloud befreit hast, verfügst du bereits über seine Device ID. Falls nicht, lese dir am Besten einmal den Artikel darüber von mir durch.
2. Passwort ermitteln#
Auf GitHub habe ich ein paar kleine Programme veröffentlicht, mit denen das Passwort ermittelt werden kann. Das Projekt steht dort als Micro-Webseite, Node.js und Python Script zur Verfügung.
Alternativ dazu kannst du das Passwort auch direkt hier ermitteln. Meine Webseite berechnet es für dich direkt in deinem Browser, deine Device ID wird also nicht an mich übertragen.
3. MQTT User konfigurieren#
Als Home Assistant User mit dem Mosquitto Broker Addon hast du es am einfachsten, denn du musst nur einen kleinen Eintrag in der Konfiguration erzeugen und das Addon anschließend neustarten.
Zur Veranschaulichung verwende ich ABCdef123
als Device ID.
- username: ABCdef123
password: A599C0002BC5E5F5
Falls du nicht mit Home Assistant oder dem Addon ausgestattet bist und stattdessen einen eigenen mosquitto Broker betreibst, erzeugst du neue User in der Regel so:
mosquitto_passwd -b /etc/mosquitto/passwd ABCdef123 A599C0002BC5E5F5
Das gilt jedoch nicht für gänzlich andere Broker, wie z.B. EMQX oder HiveMQ.
Fazit#
Auch wenn das gesamte Prozedere die Sicherheit deines Smart Homes nur minimal tangiert (wenn überhaupt), fühle man sich doch um einiges wohler, wenn man keinen MQTT Broker mit anonymen Logins betreiben muss 😁.
Das Titel-/Hintergrundbild stammt von Leo_Visions auf Unsplash.