Faites communiquer vos projets simplement avec MQTT
Quel que soit le projet dans lequel vous vous lancez, s'il nécessite une communication entre plusieurs circuits, vous êtes amené à choisir une méthode pour échanger des informations...
Bienvenue sur la base documentaire des Éditions Diamond !
Quel que soit le projet dans lequel vous vous lancez, s'il nécessite une communication entre plusieurs circuits, vous êtes amené à choisir une méthode pour échanger des informations...
Je sais ce que vous vous dites. Vous avez installé votre broker et vos ESP8266 sur votre réseau local, il n'y a aucun besoin d'ajouter des mécanismes complexes pour éviter qu'un intrus ne joue avec votre système. N'est-ce pas ? Pourquoi donc alors fermez-vous votre maison à clé ? Personne ne peut entrer dans votre jardin, puisque le portail est fermé. Pourquoi ne pas laisser une paire de clés dans votre voiture ? Après tout, il faut déjà pouvoir y entrer pour démarrer...
Voyez ceci comme un article bonus car, naturellement, lorsqu'on collecte des données de capteurs ou sondes et qu'on utilise judicieusement MQTT pour cela, on s'ouvre à des options très intéressantes. MQTT étant un protocole reconnu et largement utilisé, il devient très facile d'utiliser des outils presque clés en main pour stocker et représenter les informations publiées sur les topics que vous aurez créés.
Comme nous l'avons vu dans le précédent numéro, MQTT est un véritable bonheur, en particulier lorsqu'il s'agit de collecter, communiquer et afficher des valeurs provenant de capteurs. Par habitude ou par convention, on utilise généralement des applicatifs comme Grafana pour produire une interface graphique attrayante présentant ces valeurs, avec des jauges et des courbes. Une jauge toute flashy dans un navigateur, c'est beau et pratique, mais une jauge bien rétro et bien physique, c'est encore mieux !
Déjà évoqué dans diverses publications [1], le protocole Machine-2-Machine MQTT, se veut être le standard de communication pour les objets connectés (comprendre IoT ici !). En effet, de par sa légèreté et son efficacité, il en fait un protocole très prisé pour la gestion de la télémétrie en environnement embarqué.
On parle habituellement des vulnérabilités intrinsèques aux objets connectés : vulnérabilités physiques ou liées aux protocoles sans fil utilisés, mais certains protocoles côté serveur sont difficiles à sécuriser et contribuent à fragiliser les flottes d'objets connectés. Nous étudierons le cas du protocole MQTT, largement utilisé, avec de nombreux exemples de données sensibles exposées et d'objets connectés dont il est facile de prendre le contrôle. Nous finirons par les approches possibles pour sécuriser MQTT, parfois au détriment de la compatibilité.