mod evasive 在 ubuntu 10.04 上无法正常工作

mod evasive 在 ubuntu 10.04 上无法正常工作

我有一台 ubuntu 10.04 服务器,我使用 apt-get 安装了 mod_evasiveinstall libapache2-mod-evasive

我已经尝试了几种配置,结果保持不变。

阻止确实有效,但是是随机的。

我尝试了低限制、长阻塞期以及短限制。

我期望的行为是,我可以请求网站,直到达到给定时间间隔内的页面或站点限制。之后,我期望被阻止,直到我在阻止期内没有发出任何请求。

然而,情况是,我可以请求网站,过了一会儿,我得到了随机的 403 个块,它们的百分比时而增加时而减少,但它们非常分散。

这是围攻的输出,所以你明白了:

HTTP/1.1 200   0.09 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.08 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.08 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.11 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.08 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.09 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.09 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.09 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.08 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.08 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.10 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.08 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.09 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.10 secs:      75 bytes ==> /robots.txt
HTTP/1.1 403   0.09 secs:     242 bytes ==> /robots.txt
HTTP/1.1 200   0.09 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.09 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.10 secs:      75 bytes ==> /robots.txt
HTTP/1.1 200   0.08 secs:      75 bytes ==> /robots.txt

本次测试运行期间实施的精确限制如下:

DOSHashTableSize 3097
DOSPageCount 10
DOSSiteCount 100
DOSPageInterval 10
DOSSiteInterval 10
DOSBlockingPeriod 120
DOSLogDir /var/log/mod_evasive
DOSEmailNotify ***@gmail.com
DOSWhitelist 127.0.0.1

因此我预计被阻止一次后至少还会被阻止 120 秒。

对此有什么想法吗?

我还尝试在不同的地方(vhost、服务器配置、目录上下文)添加我的配置,以及使用或不使用 ifmodule 指令……

这并没有改变任何事情。

答案1

该问题可能是由在 prefork 模式下使用 apache 引起的,mod_evasive 的每个计数器未在进程之间共享。

在 serverfault 上发布有关此内容的帖子

相关内容