我有一台 CentOS/Apache 服务器,带有经典的 .htaccess 登录/密码系统(authtype basic 等...)
我有 fail2ban,并且我的 iptables 已设置为防止 sshd 攻击,但我不知道如何应对试图强制对我的 docroot 进行身份验证的常规 http post 请求。
据我所知,(我错了吗?)这些尝试并没有出现,lastb
所以fail2ban实际上不能做太多的事情,只要请求的数量是合理的
答案1
这正是 fail2ban 所擅长的事情。
查看您的 error_log 并注意登录失败时生成的消息。
现在来看看 fail2ban 提供的过滤器 (fail2ban/filter.d)。其中一个可能已经配置为对您之前看到的错误消息做出反应,如果是这样,那么您需要做的就是在 fail2ban/jail.conf 中启用它。
如果预先提供的过滤器都不能满足您的需要,那么构建您自己的过滤器通常相当简单。
答案2
你也可以尝试mod_security。这是一个基于开源规则的 Web 应用程序防火墙。SpiderLabs 提供了一些免费的默认规则 - 如果这些规则不够用,您可以构建自己的规则。