
Mosquitto ist ein leichtgewichtiger, kleiner Open-Source-MQTT-Broker. MQTT (Message Queuing Telemetry Transport) ist ein offenes Nachrichtenprotokoll für die Maschine-zu-Maschine-Kommunikation. Es ermöglicht den Austausch von Nachrichten zwischen IoT-Geräten (Internet of Things).
Wenn wir einen MQTT-Server für unsere Heimprojekt benötigen, ist Mosquitto aufgrund seiner geringen Größe die perfekte Wahl für z.B. einen Raspberry Pi.
Raspberry Pi 4 Model B 4 GB, ARM Cortex-A72 4x, 1,50 GHz, 4 GB RAM, WiFi-ac, Bluetooth 5, LAN, 4x USB, 2x Micro-HDMI
werbung – amazon.de
Aktualisieren wir zuerst das System. Geben wir den folgenden Befehl in das Terminal oder die SSH-Konsole ein.
sudo apt-get update
sudo apt-get upgrade
Der Mosquitto MQTT-Broker kann einfach aus den Debian-Paketquellen installiert werden.
sudo apt-get install mosquitto
Installieren wir auch den Mosquitto-Client.
sudo apt-get install mosquitto-clients
Aktivieren wir den Dienst am Ende der Installation.
sudo systemctl enable mosquitto
Sobald dies geschehen ist, können wir den MQTT-Broker verwenden. Der Mosquitto-Server wird nach der Installation automatisch gestartet.
Der Mosquitto-Server registriert sich als Systemdienst und startet automatisch beim Systemstart.
Mit den folgenden Befehlen können wir den Mosquitt MQTT Broker-Dienst starten, stoppen oder neu starten.
sudo systemctl start mosquitto
sudo systemctl stop mosquitto
sudo systemctl restart mosquitto
Können wir den automatischen Start deaktivieren oder aktivieren.
sudo systemctl disable mosquitto
sudo systemctl enable mosquitto
Schauen wir mal, ob unser Server funktioniert. Öffnen wir zwei Terminals oder SSH-Fenster. Im ersten Terminal abonnieren wir das Topic „/test/topic“. Hier können wir Nachrichten empfangen.
mosquitto_sub -h localhost -t /test/topic
Das zweite Terminal wird verwendet, um eine Nachricht an den Mosquitto MQTT-Broker zu senden. Geben wir den folgenden Befehl ein. Wenn alles in Ordnung ist, sollte diese Meldung im ersten Terminalfenster erscheinen.
mosquitto_pub -h localhost -t /test/topic -m "Hello Mosquitto!"
werbung – amazon.de
Wenn wir es wünschen, können wir unsere Mqtt Broker mit einem Passwort schützen. Mosquitto enthält einen Dienst namens mosquitto_passwd zur Erstellung einer Passwortdatei. Kopieren wir den folgenden Befehl und führen wir ihn im Terminal aus. Geben wir das Passwort ein.
sudo mosquitto_passwd -c /etc/mosquitto/pwd myusername
Der Benutzername „myusername“ und das zugehörige Passwort werden in der Passwortdatei „/etc/mosquitto/pwd“ angelegt.
Erstellen wir dann die Konfigurationsdatei für Mosquitto.
sudo nano /etc/mosquitto/conf.d/default.conf
Fügen wir diese beiden Zeilen hinzu und speichern.
allow_anonymous false
password_file /etc/mosquitto/pwd
Lasst uns Mosquitto neustarten.
systemctl restart mosquitto
Testen wir es.
pi@raspberrypi:~ $ mosquitto_pub -h localhost -t /test/topic -m "Hello Mosquitto!"
Connection Refused: not authorised.
Ohne Passwort geht es nicht, wir bekommen eine Fehlermeldung. Vervollständigen wir den Befehl mit dem Paar aus Benutzername und Passwort wie folgt.
mosquitto_sub -h localhost -t /test/button -u myusername -P mypassword
mosquitto_pub -h localhost -t /test/topic -m "Hello Mosquitto!" -u myusername -P mypassword
Wir haben jetzt einen kleinen MQTT-Server, der energieeffizient betrieben werden kann, z. auf einem Raspberry Pi.
Mit dieser einfachen kleinen MQTT- Client-App können wir von unsere Android-Handy zum Mosquitto MQTT-Server verbinden

Viel Glück dafür.
Mini-Desktop-Computer Windows 11 Pro. 8 GB DDR4, 128 GB SSD mit Celeron J4125 Quad-Core-Prozessor (bis zu 2,7 GHz) 4xUSB 3.0-Ports 2xGigabit-Ethernet 4K HDMI/DP WiFi Dual BT 4.2
Optimal für Smarthome, Mosquitto, ioBroker oder Media server.
werbung