如何使 mod_remoteip 和 mod_evasive 协同工作

如何使 mod_remoteip 和 mod_evasive 协同工作

我有几台 Cento7 机器运行 Apache 2.4。它们位于负载均衡器后面。负载均衡器将 X-Forwarded-For 标头与客户端 IP 一起传递。为了让 mod_evasive 使用真实的客户端 IP,我启用了 mod_remoteip。

这是我的 mod_remoteip 配置

RemoteIPHeader X-Forwarded-For

我可以确认它正在工作,因为我看到 apache 使用这种格式记录真实的客户端 IP

LogFormat "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\""

然而 mod_evasive 似乎仍然使用负载均衡器 IP。以下是 mod_evasive 的配置

 DOSHashTableSize 3097
 DOSPageCount 2
 DOSSiteCount 50
 DOSPageInterval 1
 DOSSiteInterval 1
 DOSBlockingPeriod 10
 DOSLogDir "/opt/logs/mod_evasive"

它生成日志文件/opt/logs/mod_evasive,文件仍以 命名dos-<load balancer IP>

如何让 mod_evasive 使用真实的客户端 IP?

相关内容