详细介绍了dExit和dave ross对fail2ban的回答。与使用wordpress插件阻止攻击相比,粗暴地使用自定义fail2ban“jail”是更好的做法。问题是fail2ban过滤器使用的是日志模式,而AFAIK vanillar wordpress的安装并没有通过日志或标头向我们提供任何关于身份验证出错的线索。
所以一个插件wpfail2ban 可能会有帮助。在我看来,更好的解决方案是强制wordpress返回401 http状态码(参见我的问题here ) 它符合现代网络标准和例外情况,并允许其他工具阻止重复犯罪。在这种情况下,我们不仅限于使用fail2ban阻塞on the server (虽然我们可以轻松配置自定义监狱和过滤器以在web服务器日志中搜索401响应),但我们可以使用WAF服务,使用响应代码监控此类攻击,并在外围阻止它们。
为什么wordpress的默认值仍然是对失败的登录返回200个“OK”响应,我真的猜不出来。