本帖最后由 灰哥哥 于 2018-10-23 14:36 编辑
1、引入mosquitto仓库并更新
- sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
- sudo apt-get update
复制代码
2、安装服务与客户端
- sudo apt-get install mosquitto mosquitto-clients
复制代码 如果网络慢下载超时,重新安装加上 --fix-missing
如:sudo apt-get --fix-missing install mosquitto mosquitto-clients
3、查看运行状态与启停服务
- sudo service mosquitto start 启动
- sudo service mosquitto stop 停止
- sudo service mosquitto status 查看服务状态
复制代码
active说明服务正常
4、设置密码访问与服务端口
1)执行如下命令,创建用户mqttuser- myEdgex@instance-nbpv5z80:~/docker-compose$ sudo mosquitto_passwd -c /etc/mosquitto/passwd mqttuser
- Password:
- Reenter password:
复制代码 上面提示输入密码,记住此密码。
2)为Mosquitto打开一个新的配置文件,并让它使用这个密码文件来要求所有连接的登录:
- sudo vi /etc/mosquitto/conf.d/default.conf
复制代码 default.conf文件中拷入如下内容:
- #不允许匿名访问
- allow_anonymous false
- #密码文件,刚才上面建的用户与密码
- password_file /etc/mosquitto/passwd
- #访问端口
- port 1885
复制代码 3)重启服务
- sudo systemctl stop mosquitto
- sudo systemctl start mosquitto
复制代码
5、测试验证
第一个终端窗口订阅消息,输入命令:mosquitto_sub -h localhost -p 1885 -t test -u "mqttuser" -P "123456"
第二个终端窗口发布消息,输入命令:mosquitto_pub -h localhost -p 1885 -t "test" -u "mqttuser" -P "123456" -m "hello world mqtt!"
切回到第一个终端窗口,可以看到消息订阅显示出来了:
|