Centos搭建mqtt

本文使用emqx搭建mqtt:官方地址传送门

1.查看openssl版本

openssl version

一般情况,centos7版本为1.0.2,mqtt的框架emqx必须大于1.0.2,所以如果低于该版本请升级:centos升级openssl教程传送门

2.安装

wget https://www.emqx.com/zh/downloads/broker/4.3.8/emqx-centos7-4.3.8-amd64.rpm

sudo yum install emqx-centos7-4.3.8-amd64.rpm

sudo emqx start

3.查看防火墙
如果当前服务器打开了防火墙,需要将防火墙相应端口进行配置。

firewall-cmd --permanent --zone=public --add-port=1883/tcp

firewall-cmd --permanent --zone=public --add-port=18083/tcp

firewall-cmd --reload

如果是云服务器,配置了安全组,根据自己的情况配置安全组。

4.进入etc/emqx目录

cd /etc/emqx

5.修改配置文件emqx.conf

vi emqx.conf

修改配置文件内容。

allow_anonymous = false #关闭匿名用户登录
acl_nomatch = deny #启动主题权限

6.打开配置网页
登录网页端后台:http://xx.xx.xx.xx:18083/

请及时修改默认账号和密码
默认账号:admin
默认密码:public

7.配置网页打开插件emqx_auth_mnesia
网页端->插件->emqx_auth_mnesia->启动

8.配置mqtt用户名和密码

vi plugins/emqx_auth_mnesia.conf

修改文件内容:

auth.user.1.username = bydz-smt
auth.user.1.password = bydzsmt123!@#

9.配置acl主题权限

vi acl.conf

修改文件内容:

{allow, {user, "xxxx"}, pubsub, ["xx/xx"]}.

%%{allow, all}.

字段说明
alllow:允许
deny 禁止
all 所有人
{user, "xxxx"} 特定账号
{ipaddr, "127.0.0.1"} 特定ip
publish 发布
subscribe 订阅
pubsub 发布订阅

10.重新加载acl配置文件

emqx_ctl modules reload emqx_mod_acl_internal

11.重新启动emqx

emqx restart
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容