🔥 Firehook

Blog · mqtt

Securiser MQTT : TLS, authentification et ACL par topic

Guide pratique de la securite MQTT : TLS, authentification, droits par topic et durcissement du broker.

Pilier broker glossy isometrique avec devices connectes et points lumineux publish/subscribe

Commencer par le threat model

MQTT est souvent deploye sur des reseaux faibles et des appareils accessibles physiquement. L’ecoute, le vol de credentials et les clients malveillants sont des risques reels.

Une bonne securite commence par un modele de menace : qui peut acceder au reseau, quelles donnees sont sensibles, et que se passe-t-il en cas de compromission.

TLS partout

TLS doit etre la norme pour toute connexion MQTT. Il protege les credentials et les donnees en transit.

Utilisez des versions modernes de TLS et planifiez la rotation des certificats. Pour les devices contraints, anticipez la gestion des certs.

Choix d’authentification

Le couple login/mot de passe est souvent trop faible. Les certificats client ou des tokens courts sont plus solides.

Lie l’identite a la provision. Evitez les credentials partages entre plusieurs devices.

ACL par topic et moindre privilege

Les ACL doivent limiter la publication et la souscription. Un device ne doit pas pouvoir acceder a des topics d’un autre site.

Une hierarchie de topics claire simplifie ces regles. Un design confus rend les ACL ingérables.

Durcissement du broker

Bloquez l’anonyme, imposez des limites de connexions, surveillez les anomalies. Beaucoup d’attaques sont visibles si l’on regarde.

Separez brokers publics et internes. Si un bridge public est necessaire, isolez-le.

Audit et observabilite

Loggez les echec d’auth, les subscriptions suspectes et les taux de publish anormaux. Ces signaux revele des erreurs ou attaques.

La securite est continue. Mettez des alertes et revoyez-les regulierement.

Securite et produit

Les controles doivent rester utilisables. Si la provision est trop complexe, l’equipe contournera.

Documentez securite et topics au meme endroit pour eviter les zones d’ombre.

FAQ

TLS est-il obligatoire en production ?
Oui, sinon les donnees et credentials peuvent etre interceptés.
Peut-on utiliser des JWT ?
Oui, via des brokers ou plugins compatibles.
Les ACL suffisent-elles ?
Non, elles sont necessaires mais il faut aussi une auth forte et du monitoring.
Et les brokers publics ?
Risque eleve. A reserver aux donnees non sensibles.
Comment revoquer un device ?
Coupez ses credentials et bloquez son client ID ou certificat.