mysql数据库限制多次登录失败,限定用户重试时间 |
您所在的位置:网站首页 › mysql登录记录 › mysql数据库限制多次登录失败,限定用户重试时间 |
最近的项目开始进行安全测试,其中有一个安全问题是这样的。 MySQL数据库应增加用户登录失败处理功能,限制非法登录次数。 相信大家也都会遇到这样的问题,在这里写一下,方便大家直接使用。 设置方法登录mysql数据库 mysql -u root -p 输入如下命令,安装插件 install plugin CONNECTION_CONTROL soname 'connection_control.so'; install plugin CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS soname 'connection_control.so';
查看安装的插件 我们发下,最下面增加了两个插件
修改my.cnf文件 vim /etc/my.cnf在文件中,我们增加如下两行 connection-control-failed-connections-threshold=5 #登陆失败次数限制 connection-control-min-connection-delay=300000 #限制重试时间,此处为毫秒,注意按需求换算,此处为5分钟重启mysql service mysql restart重新登录数据库,查看是否生效 show variables like '%connection_control%';
输入密码错误5次后,将不可以再输入密码
扩展 静态安装插件 上面提供的方式为动态安装,静态安装方式如下: vim /etc/my.cnf增加如下配置 plugin-load-add = connection_control.so插件卸载 UNINSTALL PLUGIN CONNECTION_CONTROL; UNINSTALL PLUGIN CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS;插件参数 connection_control_failed_connections_threshold:失败登陆次数达到此值后触发延迟。值域:[0, INT_MAX32(2147483647)],0表示关闭此功能。默认值为3。 connection_control_max_connection_delay:登陆发生延迟时,延迟的最大时间;此值必须大于等于connection_control_min_connection_delay。值域:[1,INT_MAX32(2147483647)]。默认值:INT_MAX32。单位:毫秒。 connection_control_min_connection_delay:登陆发生延迟时,延迟的最小时间,此值必须小于等于connection_control_max_connection_delay。值域:[1000, INT_MAX32(2147483647)]。默认值:1000。单位:毫秒。 延迟的时间如何计算 一旦连续的失败登陆次数超过设定阈值,那么就会产生延迟,并且延迟随着失败次数增加而增加,上限为connection_control_max_connection_delay; 具体的计算方式如下: MIN ((failed_attempts - threshold) * MIN_DELAY), MAX_DELAY)
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |