首页 > 解决方案 > PHP Apache 模块 mod_evasive 不仅被 IP 阻塞

问题描述

我按照这个教程安装 mod_evasive

https://documentation.cpanel.net/display/EA4/Apache+Module%3A+Evasive#ApacheModule:Evasive-Configuration

<IfModule mod_evasive24.c>
  DOSHashTableSize    3097
  DOSPageCount        10
  DOSSiteCount        50
  DOSPageInterval     3
  DOSSiteInterval     4
  DOSBlockingPeriod   60
</IfModule>

我将DOSBlockingPeriodBlock bad IP 设置为 60 秒。它的默认设置是 10 秒

如果我在 3 秒内刷新我的网站 10 次,那么我会收到 403 错误,似乎没问题。

问题 1

但是在 10 秒后或 10 秒之前的某个时间后,我的网站再次开始工作,它不会在 60 秒内阻止我的 IP。


问题 2

对于测试,我使用不同的用户代理每秒发送 500 个请求,它不会阻止我的请求。它没有保护我免受 IP 的 DDos 攻击。如果来自同一个用户代理的所有请求,则它会阻止 IP。

如果 1 个浏览器中的任何 IP 块,它正在其他浏览器中工作,这意味着 mod_evasive 块检查 IP+user_agent。我想阻止一个坏 IP 60 秒。

我检查了那些 8 岁的答案,而不是我的解决方案。

Centos 7、PHP 7.2、Apache 2.4

有什么解决办法吗?

标签: phpapache2whmmod-evasive

解决方案


推荐阅读