MQTT服务器Mosquitto的使用及配置过程中的一些问题和解决方法

您所在的位置:网站首页 由于目标计算机积极拒绝无法连接是什么原因 MQTT服务器Mosquitto的使用及配置过程中的一些问题和解决方法

MQTT服务器Mosquitto的使用及配置过程中的一些问题和解决方法

2024-07-13 21:08| 来源: 网络整理| 查看: 265

MQTT服务器Mosquitto的使用及配置过程中的一些问题和解决方法 Mosquitto下载Mosquitto配置过程中的一些问题和解决方案开启Mosquitto服务以后出现local only mode 的情况连接失败或者目标计算机积极拒绝连接Connection Refused:not authorised Mosquitto的使用Mosquitto启动服务Mosquitto注册用户名和密码Mosquitto订阅与发布消息 最近在学习MQTT协议及MQTT协议的模糊测试,避免不了要搭建MQTT服务器,网上有很多MQTT服务器的介绍,这里选用了Mosquitto作为MQTT服务器。在搭建Mosquitto服务器的过程中遇到了一些问题,在搜寻资料以后发现有些问题的解决方法没有整合,所以打算写篇文章整合一下。

Mosquitto下载

Mosquittio下载的网址还是贴一下吧,虽说百度也查得到。 链接: https://mosquitto.org/download/. 有多种操作系统的资源下载,这里选择的是windows64位系统的版本。

Mosquitto配置过程中的一些问题和解决方案

下载安装了Mosquitto以后,到Mosquitto文件所在的文件夹进入命令行窗口就可以使用了。

开启Mosquitto服务以后出现local only mode 的情况

这里需要配置一下mosquitto.conf文件。打开这个文件,找到listener的配置,将#删除再在listener后面加一个固定的端口1883。这个文件里的listener可能比较多,找到#listener port-number [ip address/host name/unix socket path]这句后面的那个listener。 然后找到allow_anonymous false,将false修改为true。 然后启动Mosquitto服务的时候使用配置文件启动。 在这里插入图片描述 这样就没有出现local only mode 的情况了,如果出现local only mode ,则MQTT服务就只能在一台主机上进行,别的客户端想要连到MQTT服务器进行MQTT通信是不行的。

连接失败或者目标计算机积极拒绝连接

可能是防火墙的问题。需要将服务器端和客户端的防火墙关闭,或者配置一下防火墙。

Connection Refused:not authorised

Mosquitto服务器要进行MQTT通信的话,客户端订阅需要加上用户名和密码。而客户端的用户名和密码需要在服务器端上注册。Mosquitto服务器注册用户名和密码是通过mosquittto_passwd修改pwfile.example文件进行的。这里网上的资料也有,有个问题就是注册以后还需要到mosquitto.conf文件中加上一行password_fle 路径\pwfile.example,不然通过这个配置文件启动的时候,Mosquitto服务器不知道客户端有没有注册过。注意修改之后要多一行空行。 之后客户端就可以通过mosquitto_sub -t topic -h Mosquitto服务器端的IP地址 -u 用户名 -P 密码 进行订阅MQTT服务。客户端订阅MQTT服务之前,服务器端的Mosquitto服务需要打开。

Mosquitto的使用 Mosquitto启动服务

mosquitto -v mosquitto -c 配置文件 -v

Mosquitto注册用户名和密码

mosquitto_passwd -H sha512 -c -b pwfile.example -u username -P password 第一次注册,需要用-c创建一个新的密码文件,或者说可以用-c覆盖掉原先的密码文件。 mosquitto_passwd -H sha512 -b pwfile.example username password 添加新的用户名和密码。 如果不使用用户密码登录mosquitto服务器,则需要在mosquitto.conf文件最后加上一条allow_anonymous true。

Mosquitto订阅与发布消息

mosquitto_sub -t topic -h mosquitto服务器所在的IP地址 -u 订阅端用户名 -P 订阅端密码 订阅消息。 mosquitto_pub -t topic -h mosquitto服务器所在的IP地址 -u 发布端用户名 -P 发布端密码 -m 发布端要发布的消息。 发布消息。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3