mqtt服务器 mosquitto入门

    mosquitto是mqtt服务器客户端的一个实现,编译安装后可使用服务端以及客户端服务。mqtt包含服务器、发布者、订阅者三个角色。

1.下载

  https://mosquitto.org/download/

2.安装

在linux下解压源文件后再进入源文件根目录,执行make后再执行make install

3.使用默认配置

开启服务端:在终端1中执行:mosquitto

开启订阅客户端:在终端2中执行:mosquitto_sub -t 'test/topic' -v

发布数据:在终端3中执行:mosquitto_pub -t 'test/topic' -m 'hello world',终端2中客户端接收订阅消息hello word并显示。

4.修改配置

      修改目的:1.客户端需要使用用户名和密码才能与服务端交互

                        2.新增topic,订阅发布时都用新的topic

    修改服务器配置文件:文件路径/etc/mosquitto/mosquitto.conf

                                        增加用户管理文件路径配置参数:“#password_file” 改为"password_file /etc/mosquitto/pwfile"

                                        增加topic管理文件路径配置参数:"#acl_file" 改为 “acl_file /etc/mosquitto/aclfile”

    增加访问控制:增加用户:test 增加主题:test_jxd。修改此文件 /etc/mosquitto/aclfile 。
    # This affects access control for clients with no username.
    topic read $SYS/#
    
    # This only affects clients with username "roger".
    user roger
    topic foo/bar
   
   # This affects all clients.
    pattern write $SYS/broker/connection/%c/state
   user test
   topic test_jxd

    新增用户:用户:test 密码:test

                   增加用户操作:sudo mosquitto_passwd  /etc/mosquitto/pwfile test

 

5.使用新配置

开启服务端:在终端1中执行:mosquitto -c /etc/mosquitto/mosquitto.conf

开启订阅客户端:在终端2中执行:mosquitto_sub -t test_jxd -u test -P test

发布数据:在终端3中执行:mosquitto_pub -t test_jxd -u test -P test -m 'hello world',终端2中客户端接收订阅消息hello word并显示。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值