5

我们遇到了奇怪的情况,我们在 Ubuntu 14 上使用 apache 2.4 配置了 mod_evasive。我们在白名单中添加了 google bot IP(我们在白名单中维护了一长串内部和外部 IP)。但是谷歌 IP 仍然被 mod_evasive 阻止。

我们检查了 mod_evasive 功能,它工作正常(我们已经通过在白名单中添加 IP 使用 Apache 基准测试工具进行了测试)。以下是配置,最初 IP-66.249.66.5 是子网 66.249.64.0/19 的一部分,但我们添加了 24 和 32 子网

   <ifmodule mod_evasive20.c>
   DOSHashTableSize 3097
   DOSPageCount  8
   DOSSiteCount  50
   DOSPageInterval 1
   DOSSiteInterval  3
   DOSBlockingPeriod  600
   DOSLogDir   /var/log/mod_evasive
   DOSEmailNotify  abc@abc.com
   DOSWhitelist 66.249.66.5 66.249.0.0/16 66.249.64.0/19
   </ifmodule>

   root@ip-10:~# apachectl -M | grep -i ev
    evasive20_module (shared)
4

2 回答 2

10

根据https://www.linode.com/docs/websites/apache-tips-and-tricks/modevasive-on-apache您应该使用通配符而不是子网划分。例如以下内容(这与子网划分不完全一样):

DOSWhitelist 66.249.*.*
于 2016-10-12T12:40:37.633 回答
1

有时您需要阻止 /17 或 /19,而通配符不适用于这种情况。如果 mod_evasive 真的可以处理网络子网规范,那就太好了。

于 2020-08-03T19:35:41.717 回答