关于Emqx4.3版本中emqx_auth_username验证被废弃的处理

关于Emqx4.3版本中emqx_auth_username验证被废弃的处理


Emqx安装成功后的,后台地址为http://127.0.0.1:18083,默认登录账号为admin,密码为public。emqx的配置目录路径存在/etc/emqx/中。使用service emqx start/stop/restart进行服务操作。线上使用emqx时需要进行一下处理,首先就是防匿名用户登录操作。关于这项是否成功可以在管理后台的websocket中直接点击connet判断是否禁止匿名用户登录,如果正常开启则必须输入username和password才能连接。
首先是要修改配置文件/etc/emqx/emqx.conf调整allow_anonymous为false,即开启防匿名用户登录。

#禁止匿名登录,allow_anonymous默认是true
vim /etc`在这里插入代码片`/emqx/emqx.conf
## Value: true | false
allow_anonymous = false

之后就有些不一样了,在Emqx4.3版本之前存在一个emqx_auth_username扩展,可以通过启动emqx_auth_username插件模块修改其配置实现账号密码验证。进行如下操作即可使用。

#导入插件模块
cd /usr/lib/emqx/bin
sh emqx_ctl plugins load emqx_auth_username

#命令添加账号密码或者编辑配置文件
emqx_ctl users add admin public
#编辑用户名密码配置文件
vim /etc/emqx/plugins/emqx_auth_username.conf
## username 认证数据
auth.user.2.username = admin
auth.user.2.password = public
## Password hash
auth.user.password_hash = sha256

但在Emqx4.3版本之后不一样了,官方文档:https://docs.emqx.cn/broker/v4.3/changes/changes-4.3.html#_4-3-0-%E7%89%88%E6%9C%AC 里有注明4.3版本中emqx_auth_clientid 与 emqx_auth_usernmae 合并为 emqx_auth_mnesia。emqx_auth_username模块从此废弃。在Emqx4.3版中加载emq_auth_username插件会报不存在的错误,所以不要再去寻找安装emqx_auth_username模块了。直接修改/etc/emqx/plugins/emqx_auth_mnesia.conf模块配置文件,添加账号密码。来开启默认加载启动插件
#在Emqx4.3版中加载插件会报不存在

# ./emqx_ctl plugins load emq_auth_username   
Load plugin emq_auth_username error: not_found.

# etc/plugins/emqx_auth_mnesia.conf

## clientid 认证数据
auth.client.1.clientid = admin
auth.client.1.password = public

## username 认证数据
auth.user.2.username = admin
auth.user.2.password = public
## Value: plain | md5 | sha | sha256 
auth.mnesia.password_hash = sha256

另外Mnesia认证默认即是使用 sha256 进行密码哈希加密,可在 、var/lib/emqx/plugins/loaded_plugins 中更改,其方式也和原来的emqx_auth_username模块不一样。而是使用auth.mnesia.password_hash配置项来设置。最后重启emqx restart并在管理后台启动emqx_auth_mnesia插件即可。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值