Ubuntu下安装和配置MQTT服务器Mosquitto

MQTT(Message Queuing Telemetry Transport)是一种轻量级的通信协议,设计用于物联网设备之间的低带宽、不稳定网络环境下的高效通信。MQTT允许设备通过发布(publish)和订阅(subscribe)模式进行消息传递,这种模式称为发布-订阅模式。MQTT服务器是提供MQTT协议支持的服务器,用于接收客户端发布的消息,并将消息传递给订阅了相应主题的客户端。

MQTT服务器软件有很多种选择,例如Mosquitto、EMQ、RabbitMQ等。

Mosquitto‌是一个开源的MQTT消息代理(Broker),用于实现MQTT协议。

Mosquitto支持可发布/可订阅的消息推送模式,适用于低功耗传感器、手机、嵌入式计算机、微型控制器等移动设备之间的通信。

Mosquitto的特点包括:

1.实现了MQTT v3.1协议,支持轻量级的消息推送模式;

2.允许设备和应用之间进行高效的消息通信,适用于物联网领域;

3.提供了发布和订阅功能,以及QoS级别控制等;

4.可以在不同的操作系统上安装和运行,包括Windows、Linux等。

要在Ubuntu上安装和配置Mosquitto服务器的步骤如下:

第一步:安装服务器

sudo apt install mosquitto

第二步:安装客户端工具

sudo apt install mosquitto-clients

第三步:设置用户名和密码

Mosquitto服务器默认没有用户名和密码,且只能本机访问,不允许远程访问。如果要让安装的Mosquitto服务器支持远程访问,就必须设置用户名和密码。

这里假设设置用户名为user1,密码为pass1。

sudo mosquitto_passwd -c /etc/mosquitto/pass.conf user1

这时会提示输入密码,连续输入两次pass1,然后回车即可。

第四步:将用户名和密码文件路径写入配置文件

用文本编辑器打开文件/etc/mosquitto/mosquitto.conf文件,在文件最后添加以下两行:

password_file /etc/mosquitto/pass.conf

listener 1883

第五步:重启服务

sudo service mosquitto restart

通过mosquitto提供的客户端工具mosquitto_pub和mosquitto_sub验证发布和接收MQTT消息

发布消息:

订阅消息:

相关推荐
Wang's Blog28 分钟前
Java 项目实战: 外卖平台-删除分类的关联校验与自定义业务异常
java·服务器·项目开发
INGNIGHT32 分钟前
270 · 电话号码的字母组合II(Trie)
linux·算法
zly350033 分钟前
VMware Converter Standalone 物理机转化为虚拟机后源1硬盘变成了2个硬盘(2个硬盘文件)虚拟机无法启动。
linux·运维·服务器
学习中的码虫1 小时前
网络编程5
服务器·网络
GPU实战笔记1 小时前
本地跑不动 llama.cpp,临时租云 GPU 怎么搭?从启动服务到环境复用
java·服务器·网络·人工智能·深度学习·llama
GeW2 小时前
从内核到数据:Linux与工业数据库如何支撑高端制造
linux
小小的木头人3 小时前
Linux systemd Service 与 Timer 定时任务原理及实战
linux
熊明才4 小时前
WSL2 网络突然瘫痪(Network is unreachable / 没有 eth0)最短修复指南(2026年9月20日亲测可用)
linux·windows·wsl2
Tairitsu_H5 小时前
[Linux系统] 自动化构建make / Makefile | 进度条
linux·操作系统·makefile·make