如何在Linux服务器上安装Mosquitto MQTT?对应目录如何选择?
Linux服务器Mosquitto MQTT安装及操作指南
1 安装步骤
以下操作均为服务器端无桌面环境下的命令行操作,适配主流Linux发行版:
1.1 Debian/Ubuntu 系列
- 先更新本地软件源索引:
sudo apt update - 安装Mosquitto服务端和配套客户端工具:
sudo apt install mosquitto mosquitto-clients -y
1.2 CentOS/RHEL 系列
- 先启用EPEL第三方软件源:
sudo yum install epel-release -y - 安装Mosquitto服务端和客户端工具:
sudo yum install mosquitto -y
2 核心目录及文件说明
安装完成后默认会生成以下核心路径,无需手动创建:
/etc/mosquitto/:主配置目录,所有全局规则、认证配置、权限列表都存放在此处/etc/mosquitto/mosquitto.conf:主配置文件,建议仅做默认参数参考,自定义配置不要直接修改该文件/etc/mosquitto/conf.d/:子配置目录,所有自定义的端口、认证、ACL规则都可以单独创建.conf文件放在该目录下,重启服务会自动加载
/var/lib/mosquitto/:数据持久化目录,持久化消息、保留消息的默认存储路径/var/log/mosquitto/:日志目录,默认运行日志存放在该路径下的mosquitto.log文件中/usr/sbin/mosquitto:Mosquitto服务的二进制执行文件路径
3 基础配置及启动操作
- 设置服务开机自启:
sudo systemctl enable mosquitto - 启动Mosquitto服务:
sudo systemctl start mosquitto - 查看服务运行状态:
sudo systemctl status mosquitto
默认配置下服务会监听1883端口,允许匿名访问,生产环境建议开启认证,操作如下:
- 生成密码文件,替换为自己的实际用户名:
sudo mosquitto_passwd -c /etc/mosquitto/passwd 自定义用户名,执行后按提示输入密码即可 - 在
/etc/mosquitto/conf.d/custom.conf中添加以下配置:
allow_anonymous false
password_file /etc/mosquitto/passwd
listener 1883 0.0.0.0
- 配置修改后重启服务生效:
sudo systemctl restart mosquitto
4 功能验证
- 订阅端测试:执行命令
mosquitto_sub -h 127.0.0.1 -t test/topic -u 你设置的用户名 -P 你设置的密码 - 发布端测试:新开一个终端窗口执行
mosquitto_pub -h 127.0.0.1 -t test/topic -m "测试消息" -u 你设置的用户名 -P 你设置的密码 - 发布命令执行完成后,订阅端窗口能收到对应测试消息,说明服务运行正常
内容的提问来源于stack exchange,提问作者Rajnish
相关产品推荐
相关产品推荐

