MQTT
What is Port 1883?
Port 1883 is the default port for MQTT (Message Queuing Telemetry Transport), a lightweight publish-subscribe messaging protocol designed for constrained devices and low-bandwidth, high-latency networks. Standardized as ISO/IEC 20922 and defined in the OASIS MQTT specification, MQTT was originally developed by IBM for satellite network monitoring. MQTT has become the de facto standard messaging protocol for Internet of Things (IoT) devices due to its minimal overhead, low power consumption, and reliable message delivery. The protocol uses a broker-based architecture where clients publish messages to topics and subscribe to receive messages on topics of interest. Quality of Service (QoS) levels range from at-most-once (0) to exactly-once (2). Popular MQTT brokers include Eclipse Mosquitto, HiveMQ, and EMQX.
Common Uses
- IoT device communication and telemetry
- Home automation systems (Home Assistant, OpenHAB)
- Industrial IoT and SCADA data collection
- Mobile push notifications and chat applications
- Vehicle fleet tracking and telematics
Technical Details
Copy-paste commands to check port 1883 (MQTT) from your terminal
Test connectivity
nc -zv example.com 1883
curl -v --max-time 5 http://example.com:1883/
telnet example.com 1883
nmap -p 1883 -sV example.com
(echo > /dev/tcp/example.com/1883) 2>/dev/null && echo "open" || echo "closed"
Open port in firewall
sudo ufw allow 1883/tcp
sudo iptables -A INPUT -p tcp --dport 1883 -j ACCEPT
sudo firewall-cmd --permanent --add-port=1883/tcp && sudo firewall-cmd --reload
Security Considerations
MQTT on port 1883 is unencrypted. Use MQTTS (port 8883) for TLS-encrypted connections. Many IoT devices expose MQTT brokers with no authentication, allowing anyone to subscribe to all topics and publish malicious messages. Always enable authentication, use ACLs to restrict topic access, and run MQTT over TLS. Shodan finds thousands of open MQTT brokers.
Popular Ports Reference
The most commonly used and referenced network ports