--- title: Eclipse Mosquitto created: 2026-06-08 updated: 2026-06-08 type: app tags: [catalogue, internet-of-things, mqtt, broker, app-marathon3-rattrapage-a] confidence: high contested: false sources: [https://selfh.st/apps/?tag=IoT, https://mosquitto.org/] --- # 🩟 Eclipse Mosquitto > **Broker MQTT lĂ©ger et conforme OASIS** : le standard de la messagerie IoT, utilisĂ© dans 90% des projets domotique, capteurs et edge computing. ## 📋 Informations GĂ©nĂ©rales | Champ | Valeur | | :--- | :--- | | **Site web** | [mosquitto.org](https://mosquitto.org) | | **GitHub** | [eclipse/mosquitto](https://github.com/eclipse/mosquitto) | | **License** | EPL-2.0 | | **Langage** | C | | **Étoiles GitHub** | 9.8k ⭐ | | **CatĂ©gorie** | [[cat-internet-of-things|Internet of Things]] | ## 📝 Description **Eclipse Mosquitto** est un **broker MQTT open source** extrĂȘmement lĂ©ger, Ă©crit en C par Roger Light et maintenant maintenu sous l'**Eclipse Foundation** (projet Eclipse IoT). Pourquoi c'est le standard : - ✅ **Conforme MQTT 3.1.1 et 5.0** (OASIS standard) - ✅ **Poids plume** : binaire ~300 KB, RAM idle < 1 MB - ✅ **Support QoS 0/1/2** et **messages retenus (retained)** - ✅ **Last Will & Testament** : notification de dĂ©connexion d'un client - ✅ **Authentification multi-sources** : fichier, base, plugin externe - ✅ **TLS/SSL** natif (chiffrement + auth client par certificat) - ✅ **Bridge** : interconnecter plusieurs brokers - ✅ **Auth plugins** : MySQL, PostgreSQL, Redis, JWT - ✅ **WebSockets** : support pour clients web (port 8083/8084) **DiffĂ©rence vs RabbitMQ/HiveMQ** : Mosquitto = ultra-lĂ©ger, optimisĂ© pour IoT (milliers de clients avec peu de CPU), gratuit. HiveMQ = plus riche, Java, license commerciale. **Pour qui** : projets domotique (Home Assistant, Zigbee2MQTT), capteurs industriels, tĂ©lĂ©mĂ©trie de vĂ©hicules, fleet management, edge AI. ## 🚀 Installation ### Docker Compose (recommandĂ©) ```yaml version: '3.8' services: mosquitto: image: eclipse-mosquitto:2.0 container_name: mosquitto restart: unless-stopped ports: - "1883:1883" # MQTT - "9001:9001" # WebSockets (optionnel) volumes: - ./mosquitto.conf:/mosquitto/config/mosquitto.conf - ./passwd:/mosquitto/config/passwd - mosquitto_data:/mosquitto/data - mosquitto_log:/mosquitto/log volumes: mosquitto_data: mosquitto_log: ``` ### Configuration minimale ```conf # mosquitto.conf listener 1883 allow_anonymous false password_file /mosquitto/config/passwd persistence true persistence_location /mosquitto/data/ log_dest file /mosquitto/log/mosquitto.log ``` ### GĂ©nĂ©rer le fichier d'utilisateurs ```bash docker run --rm -it eclipse-mosquitto:2.0 \ mosquitto_passwd -c /mosquitto/config/passwd mqtt_user ``` ## 🔄 Alternatives ### Open Source - [[app-mqtt-web-interface]] — interface web pour Mosquitto - [[app-zigbee2mqtt]] — pont MQTT pour Zigbee - **EMQX** — broker MQTT distribuĂ© Erlang - **VerneMQ** — broker MQTT en cluster - **RabbitMQ** — broker AMQP gĂ©nĂ©raliste (plugin MQTT) - **HiveMQ Community** — broker Java ### PropriĂ©taires - **AWS IoT Core** — MQTT managĂ© dans le cloud AWS - **Azure IoT Hub** — solution Microsoft managĂ©e - **HiveMQ Cloud** — broker managĂ© commercial ## 🔐 SĂ©curitĂ© - **TLS/SSL** : chiffrement de bout en bout (port 8883) - **Authentification par certificat client** : X.509 - **ACL (Access Control Lists)** : limiter les topics par utilisateur - **Auth dynamique** : plugins MySQL/Postgres pour utilisateurs en base - **Rate limiting** : limiter les connexions par IP - **Mises Ă  jour Eclipse** : suivre les CVE rĂ©guliĂšrement ## 📚 Ressources - [Documentation officielle](https://mosquitto.org/documentation/) - [GitHub](https://github.com/eclipse/mosquitto) - [Test public](https://test.mosquitto.org/) ## Pages LiĂ©es - [[cat-internet-of-things]] — CatĂ©gorie IoT - [[app-zigbee2mqtt]] — Pont Zigbee MQTT - [[recettes-docker-compose]] — Templates Docker