MySQL数据库用户密码连续5次输入错误限定用户登录

为数据库安全第三方会进行渗透测试,为防止恶意暴力破解用户密码,在用户登录时密码连续输入错误一定次数后限定用户的登录。本文通过插件实现当用户连续输入5次错误密码后显示其登录。

连接控制插件

MySQL数据库自带连接控制插件,插件(connection_control.dll)位置位于安装目录相对路径(…\lib\plugin)下。MySQL数据库用户密码连续5次输入错误限定用户登录_第1张图片
不清楚MySQL插件库的路径也可通过SQL查询插件库的路径信息;
MySQL数据库用户密码连续5次输入错误限定用户登录_第2张图片

插件安装

mysql> install plugin CONNECTION_CONTROL soname 'connection_control.dll';
mysql> install plugin CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS soname 'connection_control.dll';

登录root用户执行以上命令,并查看插件默认的参数信息,如下图所示:
MySQL数据库用户密码连续5次输入错误限定用户登录_第3张图片

部分参数说明

只列出部分主要参数说明
更详细参数信息请参看官网:https://dev.mysql.com/doc/refman/5.7/en/connection-control-variables.html

 #登陆失败次数限制
connection_control_failed_connections_threshold=5  
#限制重试时间,此处为毫秒,注意按需求换算(30分钟)
connection_control_min_connection_delay=1800000    	

修改默认参数配置

这里设置连续登录输入错误5次密码,限制3分钟不能登录,执行如下图所示:

mysql> set global connection_control_failed_connections_threshold=5;
mysql> set global connection_control_min_connection_delay=180000;

MySQL数据库用户密码连续5次输入错误限定用户登录_第4张图片

登录测试

本次测试连续输入无此错误密码,提示密码错误,当第六次输入密码回车后,连接就被挂载起来,一直等到3分钟后才进行重试连接,如下图所示:
MySQL数据库用户密码连续5次输入错误限定用户登录_第5张图片

插件卸载

mysql> UNINSTALL PLUGIN CONNECTION_CONTROL;
mysql> UNINSTALL PLUGIN CONNECTION_CONTROL_FAILED_LOGIN_ATTEMPTS;

执行以上命令后,退出账户重新登录,进行查看,结果表示插件已经卸载,如下图所示:
MySQL数据库用户密码连续5次输入错误限定用户登录_第6张图片

其他插件应用

插件配置参数详细参看:https://dev.mysql.com/doc/refman/5.7/en/connection-control-variables.html
MySQL数据库安全审计功能参看:https://blog.csdn.net/weixin_39699061/article/details/103482490
MySQL数据库密码安全策略参看:https://blog.csdn.net/weixin_39699061/article/details/103513863

你可能感兴趣的:(MySQL,MySQL,登录控制,插件)