Technology1 min read

Eclipse Mosquitto – An open source MQTT broker

By · Published by Everything Blog

In short

The software enables messaging capabilities by implementing MQTT versions 5.0, 3.1.1, and 3.1 while distributing C and C++ libraries alongside command-line tools. Unauthenticated access is confined to the local host machine by default, requiring administrators to configure network listeners and credentials before accepting remote traffic. System builds rely on cJSON and can incorporate optional components like OpenSSL for TLS encryption, SQLite for broker persistence, or libmicrohttpd for HTTP API functionality. Users can deploy the system through source compilation, pre-built binaries, the vcpkg manager, or by connecting directly to a public test server.

Key points

  • Accepting external traffic requires administrators to establish a configuration file that…: Accepting external traffic requires administrators to establish a configuration file that explicitly defines a listener and enforces authentication.
  • Building the software from source utilizes CMake on Windows and Mac platforms while other…: Building the software from source utilizes CMake on Windows and Mac platforms while other operating systems rely on make.
  • Generating project documentation directly from git sources necessitates the installation…: Generating project documentation directly from git sources necessitates the installation of both docbook-xsl and xsltproc tools.

Sources checked by our analysis pipeline: 1

Mosquitto is an open source implementation of a server for version 5.0, 3.1.1,

and 3.1 of the MQTT protocol. It also includes a C and C++ client library,

the mosquitto_pub

mosquitto_rr

, and mosquitto_sub

utilities for

publishing and subscribing, and the mosquitto_ctrl

, mosquitto_signal

, and

mosquitto_passwd

applications for helping administer the broker.

See the following links for more information on MQTT:

- Community page: http://mqtt.org/

- MQTT v3.1.1 standard: https://docs.oasis-open.org/mqtt/mqtt/v3.1.1/mqtt-v3.1.1.html

- MQTT v5.0 standard: https://docs.oasis-open.org/mqtt/mqtt/v5.0/mqtt-v5.0.html

Mosquitto project information is available at the following locations:

- Main homepage: https://mosquitto.org/

- Find existing bugs or submit a new bug: https://github.com/eclipse-mosquitto/mosquitto/issues

- Source code repository: https://github.com/eclipse-mosquitto/mosquitto

There is also a public test server available at https://test.mosquitto.org/

See https://mosquitto.org/download/ for details on installing binaries for various platforms.

If you have installed a binary package the broker should have been started automatically. If not, it can be started with a very basic configuration:

mosquitto

Then use mosquitto_sub

to subscribe to a topic:

mosquitto_sub -t 'test/topic' -v

And to publish a message:

mosquitto_pub -t 'test/topic' -m 'hello world'

Note that starting the broker like this…

Technology