MQTT mit Mosquitto Authentifizierung
Verfasst: 6. Okt 2019 00:56
Hallo zusammen,
nachdem meine MQTT-Skripte mittlerweile sehr gut funktionieren und ich auch wieder etwas Zeit habe, wollte ich den Mosquitto Broker (v 1.4.10) nun gerne mit Benutzername/Passwort schützen.
Hierzu habe ich unter /etc/mosquitto/conf.d eine acl.conf angelegt mit folgendem Inhalt:
Über den Befehl
habe ich u.a. einen Benutzer openhab2 angelegt, dem ich in
/etc/mosquitto/conf.d/acl
die folgenden Berechtigungen gegeben habe:
Jetzt suche ich aber, wo ich unter OpenHab2 Benutzername und Passwort für den Mqtt-Account eingeben kann. Beim Googlen bin ich immer wieder über eine mqtt.cfg gestolpert, die es bei mir aber nicht gibt (ich denke, das kommt noch aus openhab1?!).
Im PaperUi habe ich unter Configuration -> Sevices -> MQTT system broker connection -> Manage zwei Parameter "username" und "password" angelegt und diesen die korrekten Werte gegeben. Allerdings hat ein Neustart inkl. Cache leeren von openhab über die Befehle
nicht zum gewünschten Erfolg geführt. Ich habe daraufhin die acl, acl.conf und passwd Dateien in /tmp verschoben und openhab bzw. den raspberry pi neu gestartet. Nun ist der Passwortschutz offensichtlich nicht mehr aktiv, da mir unter "Things" alle Mqtt-Einträge als "Online" angezeigt werden. Was vorher nicht mehr so war. Und weshalb ich davon ausgehe, dass die von mir gesetzten Parameter "username" und "password" an der falschen Stelle sind?!
Könnt ihr mir hier bitte weiterhelfen?
Vielen Dank und viele Grüße
Felix
nachdem meine MQTT-Skripte mittlerweile sehr gut funktionieren und ich auch wieder etwas Zeit habe, wollte ich den Mosquitto Broker (v 1.4.10) nun gerne mit Benutzername/Passwort schützen.
Hierzu habe ich unter /etc/mosquitto/conf.d eine acl.conf angelegt mit folgendem Inhalt:
Code: Alles auswählen
acl_file /etc/mosquitto/conf.d/acl
password_file /etc/mosquitto/conf.d/passwd
allow_anonymous false # Kein Zugriff für Benutzer ohne Passwort
Code: Alles auswählen
sudo mosquitto_passwd /etc/mosquitto/conf.d/passwd <BENUTZERNAME>
/etc/mosquitto/conf.d/acl
die folgenden Berechtigungen gegeben habe:
Code: Alles auswählen
user openhab2
topic read #
topic write topic/openhab2/can/write/to
Im PaperUi habe ich unter Configuration -> Sevices -> MQTT system broker connection -> Manage zwei Parameter "username" und "password" angelegt und diesen die korrekten Werte gegeben. Allerdings hat ein Neustart inkl. Cache leeren von openhab über die Befehle
Code: Alles auswählen
sudo systemctl stop openhab2
sudo openhab-cli clean-cache
sudo systemctl start openhab2
Könnt ihr mir hier bitte weiterhelfen?
Vielen Dank und viele Grüße
Felix