Mosquitto ist eine Open-Source-Implementierung eines Servers für Version 5.0, 3.1.1 und 3.1 des MQTT-Protokolls. Es enthält außerdem eine C- und C++-Clientbibliothek sowie die Dienstprogramme mosquitto_pub
und mosquitto_sub
zum Veröffentlichen und Abonnieren.
Weitere Informationen zu MQTT finden Sie unter den folgenden Links:
Informationen zum Mosquito-Projekt sind an folgenden Orten verfügbar:
Es gibt auch einen öffentlichen Testserver unter https://test.mosquitto.org/
Einzelheiten zur Installation von Binärdateien für verschiedene Plattformen finden Sie unter https://mosquitto.org/download/.
Wenn Sie ein Binärpaket installiert haben, sollte der Broker automatisch gestartet worden sein. Wenn nicht, kann es mit einer sehr einfachen Konfiguration gestartet werden:
mosquitto
Verwenden Sie dann mosquitto_sub
um ein Thema zu abonnieren:
mosquitto_sub -t 'test/topic' -v
Und um eine Nachricht zu veröffentlichen:
mosquitto_pub -t 'test/topic' -m 'hello world'
Beachten Sie, dass das Starten des Brokers auf diese Weise anonymen/nicht authentifizierten Zugriff ermöglicht, jedoch nur vom lokalen Computer aus, sodass es nur für erste Tests wirklich nützlich ist.
Wenn Sie möchten, dass Clients von einem anderen Computer eine Verbindung herstellen, müssen Sie eine Konfigurationsdatei bereitstellen. Wenn Sie von einem Binärpaket installiert haben, verfügen Sie wahrscheinlich bereits über eine Konfigurationsdatei an einem Ort wie /etc/mosquitto/mosquitto.conf
. Wenn Sie aus dem Quellcode kompiliert haben, können Sie Ihre Konfigurationsdatei schreiben und sie dann als mosquitto -c /path/to/mosquitto.conf
ausführen.
Um Ihre Konfigurationsdatei zu starten, definieren Sie einen Listener und müssen darüber nachdenken, welche Authentifizierung Sie benötigen. Es wird nicht empfohlen, Ihren Broker mit anonymem Zugriff zu betreiben, wenn er öffentlich verfügbar ist.
Einzelheiten dazu finden Sie in den verfügbaren Authentifizierungsmethoden und im dynamischen Sicherheits-Plugin.
Dokumentation für den Broker, die Clients und die Client-Bibliotheks-API finden Sie in den Manpages, die online unter https://mosquitto.org/man/ verfügbar sind. Es gibt auch Seiten mit einer Einführung in die Funktionen von MQTT, dem Dienstprogramm mosquitto_passwd
für den Umgang mit Benutzernamen/Passwörtern und einer Beschreibung der für den Broker verfügbaren Konfigurationsdateioptionen.
Eine ausführliche API-Dokumentation zur Client-Bibliothek finden Sie unter https://mosquitto.org/api/
Um aus dem Quellcode zu erstellen, empfehlen wir Endbenutzern, das Archiv von https://mosquitto.org/download/ herunterzuladen.
Verwenden Sie unter Windows und Mac cmake
zum Erstellen. Auf anderen Plattformen führen Sie zum Erstellen einfach make
aus. Für Windows siehe auch README-windows.md
.
Wenn Sie aus dem Git-Repository erstellen, wird die Dokumentation noch nicht erstellt. Verwenden Sie make binary
, um die Erstellung der Manpages zu überspringen, oder installieren Sie docbook-xsl
auf Debian/Ubuntu-Systemen.
make WITH_SRV=yes
make WITH_CJSON=no
Automatisch mit CMake erkannt.make WITH_WEBSOCKETS=yes
make WITH_TLS=no
deaktivierenmosquitto_loop_start()
und mosquitto_loop_stop()
zu unterstützen. Wenn die Bibliothek ohne pthread-Unterstützung kompiliert wird, kann nicht garantiert werden, dass sie threadsicher ist.make WITH_BUNDLED_DEPS=no
make WITH_DOCS=no
deaktivierenBei Verwendung des CMake-Builds stehen gleichwertige Optionen zum Aktivieren/Deaktivieren von Funktionen zur Verfügung.
Mosquitto wurde von Roger Light [email protected] geschrieben