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消息

发布消息:

订阅消息:

相关推荐
码农小韩1 小时前
基于Linux的C++学习——指针
linux·开发语言·c++·学习·算法
wdfk_prog1 小时前
[Linux]学习笔记系列 -- [fs]seq_file
linux·笔记·学习
Jay Chou why did2 小时前
wsl安装完无法进入wsl
linux
石头5303 小时前
Rocky Linux 9.6 docker k8s v1.23.17 kubeadm 高可用部署文档
linux
松涛和鸣3 小时前
49、智能电源箱项目技术栈解析
服务器·c语言·开发语言·http·html·php
凉、介3 小时前
SylixOS 中的 Unix Socket
服务器·c语言·笔记·学习·嵌入式·sylixos
RisunJan3 小时前
Linux命令-ipcs命令(报告进程间通信(IPC)设施状态的实用工具)
linux·运维·服务器
春日见4 小时前
控制算法:PP(纯跟踪)算法
linux·人工智能·驱动开发·算法·机器学习
老前端的功夫4 小时前
TypeScript 类型魔术:模板字面量类型的深层解密与工程实践
前端·javascript·ubuntu·架构·typescript·前端框架