emqttd的使用

前言

测试环境的服务(以下代记为qitestproject服务)调用接口不通,查看日志是因为mqtt服务拒绝连接,not autho。。
在这里插入图片描述

意思就是认证没通过。
认证那应该是用户密码的问题。
然后看了下这个用mqtt的服务的配置文件里关于mqtt的配置里,user,password都是空。

[mqtt]
server="tcp://127.0.0.1:1883"
username=""
password=""

打开emq的管理界面,关于emq管理界面的使用:EMQ 管理控制台功能简介
在这里插入图片描述

然后我在工具-Websocket页面傻乎乎的以为是用户名密码的问题,
但是我找emqttd相关的.conf文件,没找到关于有用用户名密码认证的内容…

正文

emqx.conf配置文件

vi /etc/emqx/emqx.conf

(vi后,然后输 /#{$关键词} 可以根据关键词快速定位)

插件(plugins)配置文件
在emqx的plugins文件夹下,有很多配置文件,里面有个 emqx_auth_username.conf就是用于用户名密码认证的配置。

emq几种认证方式参考链接:https://www.cnblogs.com/lexiaofei/p/8397888.html
emq修改用户名和密码参考链接:EMQ 修改用户名和密码

但是我最后都没发现哪里配密码了还是…
然后其实这个过程,ps -aux|grep emqttd 我看似乎没有进程…… 搜mqttd时(find / -name mqttd)返回的结果也比之前少了…… 查看1883端口占用情况(netstat -tlnp|grep 1883)返回是这个:
在这里插入图片描述
(注:我后来启动成功可以用的emqttd我对比了一下啊:
在这里插入图片描述
端口前面的ip应该得是127.0.0.1)

……然后这个过程有在怀疑之前的mqttd被干掉了???

所以最后的解决方式,就是……find到的emqttd 进程 start一下,然后找了下它对应的端口号是11883,改了下用emqttd的服务的配置文件里1883配置为11883,然后重启服务,发现就好了。

如下:

1、 find / -name emqttd
在这里插入图片描述
bin下的就是进程。

2、启动emqttd (附:emqttd安装
…/bin/emqttd start
(我的就是 /home/lids/emqttd/bin/emqttd start )
然后启动成功了会返回一个很显目的…Successfully!的信息。(当时没截图)

3、查看emqttd占用的端口号

cat /home/mqttx/emqx/etc/emqx.conf

(emqx.conf不知道位置的,用find / -name emqx.conf搜索。)
找到 listener.tcp.internal
在这里插入图片描述
是11883。

4、修改使用emqttd的服务配置文件

vi  /etc/golang/qitestproject/qitestproject.toml

在这里插入图片描述
修改保存后,重启服务,就ok了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值