# eclipse-mosquitto/mosquitto

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/eclipse-mosquitto-mosquitto).**

10,644 stars · 2,592 forks · C · other

## Links

- GitHub: https://github.com/eclipse-mosquitto/mosquitto
- Homepage: https://mosquitto.org
- awesome-repositories: https://awesome-repositories.com/repository/eclipse-mosquitto-mosquitto.md

## Topics

`broker` `eclipse-iot` `mosquitto` `mqtt`

## Description

Mosquitto is a message broker that implements the MQTT protocol to route messages between connected devices and applications. It functions as a central hub for event-driven communication, supporting message exchange over both raw TCP and WebSockets. The software provides a persistent messaging infrastructure by writing message queues and client subscription states to disk, ensuring data recovery following service interruptions.

The broker distinguishes itself through its support for distributed system synchronization, allowing for the federation of multiple remote brokers to share data across geographic boundaries. It includes a comprehensive security framework that enforces transport layer security for encrypted communication and provides granular access control through topic-based restrictions. Administrators can manage security policies, including authentication and access roles, dynamically at runtime without interrupting active client connections.

The system offers extensive extensibility through a plugin-based authentication architecture, enabling integration with external databases or custom identity verification services. It also provides command-line utilities for programmatic interaction with the broker, allowing for real-time message publishing, subscription, and automated security configuration management.

## Tags

### Networking & Communication

- [Message Brokers](https://awesome-repositories.com/f/networking-communication/message-brokers.md) — Implements the MQTT protocol to route messages between connected devices and applications as a lightweight message broker.
- [MQTT Messaging Integrations](https://awesome-repositories.com/f/networking-communication/api-integration-frameworks/communication-apis/mqtt-messaging-integrations.md) — Acts as a central hub for routing MQTT messages between connected devices and applications. ([source](https://cdn.jsdelivr.net/gh/eclipse-mosquitto/mosquitto@master/README.md))
- [Broker Bridges](https://awesome-repositories.com/f/networking-communication/message-brokers/broker-bridges.md) — Synchronizes data across distributed networks by bridging remote brokers. ([source](https://mosquitto.org/documentation/))
- [Pub-Sub Messaging](https://awesome-repositories.com/f/networking-communication/pub-sub-messaging.md) — Directs incoming messages to subscribers by matching topic strings against a central registry.
- [Client-to-Client Messaging](https://awesome-repositories.com/f/networking-communication/communication-platforms-services/messaging-notification-systems/messaging-services/message-broker-infrastructure/publish-subscribe-messaging/client-to-client-messaging.md) — Provides command-line utilities for real-time message publishing and subscription. ([source](https://cdn.jsdelivr.net/gh/eclipse-mosquitto/mosquitto@master/README.md))
- [Connection Multiplexing](https://awesome-repositories.com/f/networking-communication/connection-multiplexing.md) — Provides unified communication channels by multiplexing concurrent client connections over TCP and WebSockets.

### Hardware & IoT

- [Connectivity Hubs](https://awesome-repositories.com/f/hardware-iot/connectivity-iot/internet-of-things/industrial-iot-platforms/connectivity-hubs.md) — Acts as a central messaging gateway that synchronizes data across geographic locations and manages secure connections for large-scale device networks.

### DevOps & Infrastructure

- [Message Queues](https://awesome-repositories.com/f/devops-infrastructure/message-queues.md) — Provides persistent messaging infrastructure by writing message queues and client subscription states to disk to ensure reliable delivery.
- [Messaging Infrastructure](https://awesome-repositories.com/f/devops-infrastructure/messaging-infrastructure.md) — Provides persistent messaging infrastructure by storing queues and subscription states on disk.
- [Security Policy Automators](https://awesome-repositories.com/f/devops-infrastructure/security-automation-workflows/security-policy-automators.md) — Automates security updates by allowing programmatic modification of access roles without service restarts. ([source](https://mosquitto.org/documentation/dynamic-security/))

### Data & Databases

- [Data Persistence and Storage](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage.md) — Persists message data to local disk storage to prevent data loss during network failures. ([source](https://mosquitto.org/))
- [Distributed Data Synchronization Systems](https://awesome-repositories.com/f/data-databases/distributed-data-synchronization-systems.md) — Synchronizes data streams across geographic locations by connecting multiple remote brokers.

### Security & Cryptography

- [Authentication Plugins](https://awesome-repositories.com/f/security-cryptography/authentication-plugins.md) — Extends identity verification through a plugin-based architecture for custom authentication services.
- [Communication Encryption](https://awesome-repositories.com/f/security-cryptography/communication-encryption.md) — Secures data transmission by wrapping network traffic in transport layer security protocols.
- [Device Access Policies](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/device-connection-authorization/device-access-policies.md) — Enforces authentication, encryption, and access control policies for connected devices.
- [Messaging Session Persistence](https://awesome-repositories.com/f/security-cryptography/identity-access-management/session-management/stateful-session-persistence/messaging-session-persistence.md) — Persists message queues and client states to disk to ensure recovery after service interruptions.
- [Secure Network Communication](https://awesome-repositories.com/f/security-cryptography/secure-network-communication.md) — Protects data transmission between clients and servers using transport layer security.
- [TLS Management](https://awesome-repositories.com/f/security-cryptography/tls-management.md) — Encrypts connections via TLS by validating server or client identities through digital certificates. ([source](https://test.mosquitto.org/))
- [TLS Transfer Security](https://awesome-repositories.com/f/security-cryptography/tls-transfer-security.md) — Enforces transport layer security and granular access control to protect sensitive data exchange between clients.
- [Access Control](https://awesome-repositories.com/f/security-cryptography/access-control.md) — Manages access control through configurable authentication methods and security plugins to maintain a secure environment for messaging traffic. ([source](https://cdn.jsdelivr.net/gh/eclipse-mosquitto/mosquitto@master/README.md))
- [Network Connection Security](https://awesome-repositories.com/f/security-cryptography/network-connection-security.md) — Secures client connections by enforcing authentication and encryption protocols to ensure only authorized devices exchange sensitive data. ([source](https://mosquitto.org/documentation/))
- [Subject Access Restrictions](https://awesome-repositories.com/f/security-cryptography/security/policies/host-resource-access/file-system-access-controls/path-access-restrictions/path-access-restrictions/subject-access-restrictions.md) — Restricts topic access using priority-based rules, wildcard patterns, and dynamic client-specific substitution. ([source](https://test.mosquitto.org/))
- [Client Session Persistence](https://awesome-repositories.com/f/security-cryptography/session-persistence-strategies/client-session-persistence.md) — Persists client subscription details to disk to ensure consistency after service restarts. ([source](https://mosquitto.org/documentation/))
- [Client Credentials](https://awesome-repositories.com/f/security-cryptography/client-credentials.md) — Allows administrators to create, enable, disable, or remove user accounts while the messaging service remains operational. ([source](https://mosquitto.org/documentation/dynamic-security/))
- [Custom Authentication Providers](https://awesome-repositories.com/f/security-cryptography/custom-authentication-providers.md) — Integrates custom authentication logic to handle complex identity verification tasks, including connections to external databases. ([source](https://mosquitto.org/documentation/authentication-methods/))
- [Permission-Based Security](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/access-control-models/permission-based-security.md) — Updates access permissions and user roles at runtime without interrupting active client connections or service operations. ([source](https://mosquitto.org/man/))
- [Role-Based Access Control Systems](https://awesome-repositories.com/f/security-cryptography/role-based-access-control-systems.md) — Groups multiple access control lists into reusable security profiles to simplify permission management for connected devices. ([source](https://mosquitto.org/documentation/dynamic-security/))
- [Guest Access Policies](https://awesome-repositories.com/f/security-cryptography/access-control/guest-access-policies.md) — Assigns unauthenticated connections to a restricted user group to enforce security policies for guest devices. ([source](https://mosquitto.org/documentation/dynamic-security/))
- [Credential File Parsers](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/session-and-credential-handling/session-credential-management/credential-file-parsers.md) — Validates user credentials against local text files, allowing for runtime updates to authentication information. ([source](https://mosquitto.org/documentation/authentication-methods/))
- [Password Management](https://awesome-repositories.com/f/security-cryptography/password-management.md) — Generates and maintains password files to control system access and prevent unauthorized client connections. ([source](https://mosquitto.org/man/))

### Development Tools & Productivity

- [Configuration Hot-Reloading](https://awesome-repositories.com/f/development-tools-productivity/configuration-hot-reloading.md) — Updates security policies and access control lists in memory without interrupting active client connections.
- [Configuration Managers](https://awesome-repositories.com/f/development-tools-productivity/configuration-managers.md) — Manages network listeners, persistence, and security policies through a centralized configuration file. ([source](https://mosquitto.org/man/))
