Centos7.9 2009 离线部署mosquitto

总体步骤:

1.联网服务器安装mosquitto,把所有文件打包成压缩文件下载到本地;

2.在测试/生产环境把本地的压缩文件上传;

3.在测试/生产环境解压并安装

系统满足条件:centos7.9 2009

一、联网服务器操作(需下载依赖包)

1. 安装EPEL仓库(解决依赖问题)
yum install epel-release -y  # 安装扩展仓库
yum clean all && yum makecache  # 清理缓存并更新

验证:

yum repolist | grep epel  # 确认EPEL仓库已启用

验证命令如图所示:

2. 下载Mosquitto及依赖包
mkdir -p /opt/mosquitto_offline && cd /opt/mosquitto_offline
yum install mosquitto mosquitto-devel -y --downloadonly --downloaddir=.  # 下载主程序及开发文件
yum install libwebsockets libwebsockets-devel -y --downloadonly --downloaddir=.  # 下载WebSocket支持库(可选)

验证:

ls *.rpm | grep mosquitto  # 确认包含mosquitto-*.rpm
ls *.rpm | grep libwebsockets  # 若需WebSocket支持,确认此文件存在
3. 打包并压缩所有依赖包
tar -czvf folder_name.tar.gz /path/to/source/folder
-c:创建新的压缩文件
-z:使用gzip压缩
-v:显示压缩过程(可选)
-f:指定压缩文件名

验证:

ls -lh folder_name.tar.gz  # 确认文件已生成且大小合理

二、目标服务器操作(离线安装)

将联网服务器的 压缩文件.tar.gz 通过USB/FTP等方式传输到目标服务器的/opt目录。

1. 解压
tar -xzvf 压缩包
2. 安装RPM包
cd /opt/mosquitto_offline
rpm -Uvh --nodeps *.rpm  # 升级或安装所有RPM包(忽略依赖检查,需提前确保依赖已满足)

验证:

rpm -qa | grep mosquitto  # 确认mosquitto及开发包已安装
rpm -qa | grep libwebsockets  # 若需WebSocket支持,确认此包已安装
3. 配置Mosquitto
# 1. 创建配置文件目录(若不存在)
mkdir -p /etc/mosquitto

# 2. 复制默认配置文件(需从联网服务器获取或手动创建)
cp /usr/share/doc/mosquitto-*/mosquitto.conf /etc/mosquitto/  # 默认配置文件路径可能因版本不同而变化

# 3. 修改配置文件(支持WebSocket及用户认证)
vim /etc/mosquitto/mosquitto.conf

关键配置项:

# 支持WebSocket(可选)
listener 9001
protocol websockets

# 关闭匿名访问
allow_anonymous false

# 用户认证文件路径
password_file /etc/mosquitto/pwfile.txt
4. 创建用户并启动服务
# 1. 创建密码文件
mosquitto_passwd -c /etc/mosquitto/pwfile.txt root  # 首次运行需加-c参数

# 2. 启动服务
systemctl start mosquitto  # 使用systemctl管理服务

# 3. 设置开机自启
systemctl enable mosquitto

验证:

systemctl status mosquitto  # 确认服务状态为active
netstat -tulnp | grep mosquitto  # 确认1883/9001端口已监听
telnet 127.0.0.1 1883  # 测试端口连通性

三、测试验证

1. 发布/订阅测试
# 订阅主题
mosquitto_sub -h localhost -t test -u root -P 密码  # 需替换实际密码
# 发布消息
mosquitto_pub -h localhost -t test -m "Hello MQTT" -u root -P 密码
2. 验证用户认证
# 尝试匿名订阅(应失败)
mosquitto_sub -t test  # 无密码会报错

注意事项

1.依赖完整性:若安装后提示缺少库(如:libmosquitto.so),需手动下载对应版本的.rpm包并安装。

2.防火墙设置:确保开放1883(MQTT)和9001(WebSocket)端口

3.配置文件路径:不同Mosquitto版本配置文件路径可能不同,需确认实际路径

通过以上步骤,可在离线环境中完成Mosquitto的安装与配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值