MQTT(Message Queuing Telemetry Transport)是一种轻量级的发布/订阅消息传输协议,广泛应用于物联网(IoT)设备之间的通信。在本教程中,我们将使用 CentOS 系统,通过安装开源的 Mosquitto 软件来搭建一个功能完整的 MQTT消息代理。无论你是刚接触物联网的新手,还是有一定经验的开发者,都能轻松跟着本教程完成部署。
确保你有一台运行 CentOS 7 或 CentOS 8 的服务器(或虚拟机),并具备 root 权限或 sudo 权限。同时,建议关闭防火墙或开放相应端口(默认为 1883)。
Mosquitto 不在 CentOS 默认仓库中,我们需要先启用 EPEL(Extra Packages for Enterprise Linux)仓库:
# CentOS 7sudo yum install -y epel-release# CentOS 8 / Streamsudo dnf install -y epel-release
现在可以使用 yum 或 dnf 安装 Mosquitto 及其客户端工具:
sudo yum install -y mosquitto mosquitto-clients# 或者在 CentOS 8 上sudo dnf install -y mosquitto mosquitto-clients 安装完成后,启动 Mosquitto 服务并设置为开机自动运行:
sudo systemctl start mosquittosudo systemctl enable mosquitto
我们可以使用 Mosquitto 自带的命令行工具进行简单测试。打开两个终端窗口:
终端1(订阅者):
mosquitto_sub -h localhost -t test/topic
终端2(发布者):
mosquitto_pub -h localhost -t test/topic -m "Hello from CentOS MQTT!"
如果一切正常,终端1会立即收到消息:Hello from CentOS MQTT!,说明你的 MQTT消息中间件 已成功运行!
如果你启用了 firewalld,需要开放 MQTT 默认端口 1883:
sudo firewall-cmd --permanent --add-port=1883/tcpsudo firewall-cmd --reload
为了提升安全性,建议为 MQTT 代理添加用户名和密码验证:
# 创建密码文件(首次创建用 -c)sudo mosquitto_passwd -c /etc/mosquitto/passwd your_username# 按提示输入密码# 编辑配置文件sudo nano /etc/mosquitto/mosquitto.conf
在配置文件末尾添加以下内容:
allow_anonymous falsepassword_file /etc/mosquitto/passwd
保存后重启服务:
sudo systemctl restart mosquitto
之后,客户端连接时需加上 -u 用户名 -P 密码 参数。
通过本教程,你已经成功在 CentOS 系统上部署了 Mosquitto MQTT消息代理,并完成了基本测试与安全配置。无论是用于智能家居、工业物联网还是远程监控系统,这套轻量级的消息中间件都能为你提供稳定可靠的通信支持。希望这篇 MQTT安装教程 对你有所帮助!
相关SEO关键词回顾: CentOS MQTT消息代理、MQTT安装教程、CentOS部署Mosquitto、MQTT消息中间件。
本文由主机测评网于2025-12-19发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025129956.html