Référence des ports
Port 1883 (TCP) – MQTT
Port par défaut de MQTT, le protocole de messagerie publication/abonnement léger utilisé dans les déploiements IoT ; la variante TLS tourne sur 8883.
En bref
- Transport
- tcp
- Catégorie
- Registered
- TLS
- En clair
- Niveau de risque
- Élevé
Souvent ciblé — limitez l'exposition et durcissez-le.
État par défaut
De nombreux brokers (ex. Mosquitto) autorisent l'accès anonyme par défaut et se lient largement. Le MQTT en clair sur 1883 n'est pas chiffré, laissant topics et charges utiles lisibles par quiconque atteint le port.
À quoi sert le port 1883 ?
Le port 1883 est le port par défaut de MQTT, un protocole de messagerie publication/abonnement léger très utilisé en IoT et domotique. Les appareils et applications se connectent à un broker central — comme Eclipse Mosquitto, HiveMQ ou EMQX — pour publier et s'abonner à des topics, ce qui permet à des plateformes comme Home Assistant de relier capteurs et interrupteurs. Le MQTT en clair tourne sur 1883 ; la version sécurisée par TLS utilise le 8883.
Quand faut-il l'ouvrir ?
Ouvrez ou transférez 1883 lorsque vous exploitez un broker MQTT que des appareils d'autres réseaux doivent atteindre, par exemple des capteurs IoT distants remontant vers un serveur domestique. Si tous vos clients sont sur le même LAN que le broker, gardez le port sur le réseau local et ne le transférez pas.
Est-ce risqué de l'ouvrir ?
Le MQTT en clair n'est pas chiffré et de nombreux brokers autorisent l'accès anonyme ; exigez donc un identifiant/mot de passe, utilisez TLS sur 8883 et gardez le broker sur un réseau privé ou un VPN. Voir les notes de sécurité ci-dessous.
Comment vérifier si ce port est ouvert
ss -tulpn | grep :1883
nmap -p 1883 <target>netstat -ano | findstr :1883
Test-NetConnection <host> -Port 1883lsof -i :1883
nmap -p 1883 <target>Comment ouvrir ce port sur votre box/routeur
Pour joindre ce service depuis l'extérieur de votre réseau, redirigez le port sur votre box :
- Ouvrez la page d'administration de votre box (souvent http://192.168.1.1 ou http://192.168.0.1) et connectez-vous.
- Trouvez la section « Redirection de ports » — parfois appelée NAT, Serveur virtuel ou NAT/PAT.
- Ajoutez une règle redirigeant le port externe 1883 vers l'IP locale de votre appareil, port interne 1883, protocole TCP.
- Enregistrez, redémarrez la box si demandé, puis testez le port depuis l'extérieur de votre réseau.
Ne redirigez que des ports que vous maîtrisez — cela expose l'appareil à Internet. Pour un accès distant d'administration, un VPN est plus sûr que la redirection de port.
Autoriser ce port dans le pare-feu
sudo ufw allow 1883/tcpsudo firewall-cmd --permanent --add-port=1883/tcp
sudo firewall-cmd --reloadsudo iptables -A INPUT -p tcp --dport 1883 -j ACCEPTNew-NetFirewallRule -DisplayName "Allow 1883" -Direction Inbound -Protocol TCP -LocalPort 1883 -Action AllowSécurité et risques
Utilisez une alternative sécurisée
Il s'agit d'un protocole hérité ou en clair. Préférez l'équivalent chiffré :
Attaques courantes
- Connexion anonyme pour s'abonner à tous les topics avec le joker #
- Injection de messages et publication de commandes sur les topics d'actionneurs/contrôle
- Interception des charges utiles et identifiants sur MQTT non chiffré
- Énumération de brokers massivement exposés via le scan à l'échelle d'Internet
Durcissement
- Désactiver l'accès anonyme ; exiger identifiant/mot de passe ou certificats client
- Utiliser MQTT sur TLS sur 8883 au lieu du 1883 en clair
- Lier à une interface privée et limiter 1883 par pare-feu aux hôtes de confiance
- Imposer des ACL de topics par client pour limiter la portée abonnement/publication
- Maintenir le logiciel du broker à jour et auditer les clients connectés
Comment bloquer ce port
sudo ufw deny 1883/tcpsudo firewall-cmd --permanent --remove-port=1883/tcp
sudo firewall-cmd --reloadsudo iptables -A INPUT -p tcp --dport 1883 -j DROPNew-NetFirewallRule -DisplayName "Block 1883" -Direction Inbound -Protocol TCP -LocalPort 1883 -Action BlockCommande nmap
nmap -p1883 --script mqtt-subscribe <target>Remplacez <target> par l’hôte ou la plage que vous êtes autorisé à scanner.
Ports liés
Questions fréquentes
- Le MQTT sur le port 1883 est-il chiffré ?
- Non. Le MQTT en clair sur 1883 n'est pas chiffré et autorise souvent l'accès anonyme, donc topics, charges utiles et identifiants sont lisibles. Utilisez MQTT sur TLS sur 8883 et exigez l'authentification.
- Pourquoi les brokers MQTT sont-ils si souvent exposés ?
- Les déploiements IoT exposent souvent 1883 sur Internet avec des réglages anonymes par défaut. Les attaquants scannent tout Internet à la recherche de brokers ouverts, puis s'abonnent avec le joker # pour lire tous les topics.