之前用的比较多的是mongodb,和前端搭配使用起来还算得心应手。周末做的项目用的数据库是MySQL,之前接触的不多,调试起来也是各处都是坑,记录下~

error: Host is blocked because of many connection errors

报错意思是,多次连接错误库导致MySQL直接启动防御模式,不允许连接了,也就是对IP地址进行封锁了。这样的机制也能理解且非常有必要,要防止某些脚本恶意暴力破解密码,从而泄露数据内容。

解决办法

解决办法有两种:

一、进入MySQL配置文件删除hostname的记录

二、调大最大允许的max_connect_errors数量

首先进入MySQL数据库

mysql -u root -p password   <root填用户名,password填密码>   

进入之后,如果要删除hostname的记录,则执行:

flush hosts

如果要调大max_connect_errors的值

set global max_connect_errors=1000;

一点思考

之前做项目时,网页安全性优化中也考虑了这种安全机制,例如登陆接口可暴力破解的问题。

暴力破解的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。常常存在于网站的登录系统中,通过对已知的管理员用户名,进行对其登录口令的大量尝试。

在这里插入图片描述
通过一些python脚本是可以对登陆接口进行暴力破解的,其中之一的解决办法就是封锁IP地址,但是攻击者更换IP地址仍然可以继续破解,所以单单封锁IP地址并不够,还需要进行账户锁定。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐