系列文章目录
第一章 总体概述
第二章 在实体机上安装ubuntu
第三章 Windows远程连接ubuntu
第四章 使用Docker安装和运行EMQX
第五章 Docker卸载EMQX
第六章 EMQX客户端MQTTX Desktop的安装与使用
第七章 EMQX客户端MQTTX CLI的安装与使用
第八章 Wireshark工具的安装与使用
第九章 MQTT报文
第十章 MQTT消息质量等级QoS
第十一章 MQTT主题
第十二章 MQTT会话
第十三章 MQTT消息
第十四章 MQTT订阅
第十五章 EMQX访问控制
第十六章 EMQX黑名单与连接抖动检测
前言
1 黑名单
EMQX 为用户提供了黑名单功能来禁止
某些客户端的访问,除了可以封禁客户端 ID
以外,还支持直接封禁用户名甚至 IP
地址。
封禁还可以通过规则来实现,这些规则包括:
1、使用正则表达式匹配客户端标识符和用户名。
2、使用 CIDR 范围匹配源 IP 地址。
1.1 创建黑名单
在 EMQX Dashboard 页面,点击左侧导航栏的访问控制 -> 黑名单,在随即打开的页面,单击创建。
在弹出的创建页面,按照页面提示配置:
2.1 禁用对象:通过下拉列表选择封禁客户端的方式,可以指定客户端 ID、用户名、IP 地址、客户端 ID 模式、用户名模式或 IP 地址范围,然后提供相应的值。
2.2 到期时间(可选):设置该规则的到期时间。
2.3 原因(可选):说明为该对象设置黑名单的原因。
点击创建完成配置。
MQTTX客户端连接测试
结果:因为此客户端ID在黑名单中,因此连接被拒绝了。
2 连接抖动检测
EMQX 支持自动封禁那些被检测到短时间内频繁登录的客户端,并且在一段时间内拒绝这些客户端的登录,以避免此类客户端过多占用服务器资源而影响其他客户端的正常使用。
需要注意的是,连接抖动检测功能只会封禁客户端 ID,并不封禁用户名和 IP 地址
,即该机器只要更换客户端标 ID 就能够继续登录。
抖动检测功能默认关闭,您可以通过 EMQX Dashboard 或配置文件开启该功能。
通过 Dashboard 开启:
前往 Dashboard,从左侧导航菜单点击访问控制 -> 连接抖动 进入连接抖动页面。通过点击切换按钮启用抖动检测功能。
1、检测时间窗口:您可以指定系统监视客户端抖动行为的持续时间。默认值为 1
分钟。
2、最大断连次数:您可以指定在检测窗口时间内允许的 MQTT 客户端的最大断开连接次数。它允许您设定准确的标准来识别和响应表现出抖动行为的客户端。默认值为 15
。
3、封禁时长:您可以指定客户端被封禁的时间长度。默认值为 5
分钟。
点击保存更改以完成设置。
4、连接测试
第一次连接成功。
连续断开,连接两次,会连接不上。
此时看黑名单信息,发现禁止到5分钟以后。
总结
以上,就是EMQX黑名单和连接抖动检测介绍。