08-STM32+ESP8266+AIR202基本控制篇-实现功能1和功能3详细步骤2-安装MQTT软件(Linux系统)

说明
云端的电脑拥有了公网IP
这节在云端电脑上安装一个负责数据转发的软件

这样所有的设备连接这个软件,然后按照软件的协议发送数据,
数据便会转发给另一个设备.


开放端口

<ignore_js_op>

安装MQTT软件

1.把以下文件上传到云端电脑


<ignore_js_op>
上传到opt目录
<ignore_js_op>


<ignore_js_op>

<ignore_js_op>


2.解压
<ignore_js_op>


<ignore_js_op>

3. 启动命令行

<ignore_js_op>
4.输入 cd ..   返回上一级目录

<ignore_js_op>

5.输入 ls 查看下当前在哪一级

<ignore_js_op>

6. cd opt   进入opt目录   
ls  查看目录

<ignore_js_op>

7.以控制台方式启动MQTT
第一次没有启动起来,启动了两次

cd emqttd && ./bin/emqttd consolecd ..cd emqttd && ./bin/emqttd console

<ignore_js_op>


测试通信

这是我制作的一个上位机MQTT调试助手,提供了源码.







①:
输入自己服务器的IP地址
端口号填写 1883
ClientID  如果不填写内部自动生成
用户名可以不填写,因为还没设置MQTT的用户名
密码同上

② 点击连接
③ 点击订阅
④ 发送数据

以上软件设置的是自发自收
因为发布的主题是 Topic  订阅的主题也是 Topic
实际上是数据携带着Topic发给了MQTT服务器,
因为软件订阅的主题是 Topic
所以服务器把数据转发给了软件


修改MQTT用户名和密码

1.退出控制台
键盘按两次  Ctrl + C
<ignore_js_op>

2.编辑emq.conf

<ignore_js_op>

修改一下文件里面的  mqtt.allow_anonymous = false
<ignore_js_op>

3.编辑 emq_auth_username.conf
<ignore_js_op>

修改用户名和密码(可以设置多套)
auth.user.1.username = yang
auth.user.1.password = 11223344

<ignore_js_op>


4.控制台启动 MQTT
cd emqttd && ./bin/emqttd console
<ignore_js_op>

5.浏览器输入:  http://服务器IP地址:18083
默认用户名 admin  密码: public
<ignore_js_op>


6.启用用户鉴权
<ignore_js_op>


测试

用户名密码填写自己设置的密码
<ignore_js_op>


把MQTT安装到电脑

1.退出控制台
键盘按两次  Ctrl + C

<ignore_js_op>


./bin/emqttd start

<ignore_js_op>



其它:停止MQTT   emqttd stop

原文地址:https://www.cnblogs.com/yangfengwu/p/13208260.html