modsecurity白名单ip范围

时间:2013-12-29 05:38:50

标签: ubuntu apache2 googlebot mod-security mod-security2

我正在尝试在Ubuntu 12.04服务器上将一系列ips(Googlebots)列入关于modsecurity的白名单。例如,这是我需要列入白名单的范围:

  

66.249.64.0/19

我尝试了其他人建议的几种方式,但只有单个ips被阻止,当我尝试作为范围时,白名单被忽略。我已将规则添加到文件底部新部分的/usr/share/modsecurity-crs/modsecurity_crs_10_config.conf中。

这有效:

  

SecRule REMOTE_ADDR“^ 66.249.65.3”阶段:1,nolog,allow,ctl:ruleEngine = Off

这些不起作用:

  

SecRule REMOTE_ADDR“^ 66.249.64.0 / 19”阶段:1,nolog,allow,ctl:ruleEngine = off

     

SecRule REMOTE_ADDR“@ipMatch 66.249.64.0/19”“阶段:1,nolog,允许”

     

SecRule REMOTE_ADDR“^ 66.249.64 \ 0/19 $”阶段:1,nolog,allow,ctl:ruleEngine = Off

我已经看到了几种不同的语法建议,但似乎没有一种方法可以用于我的安装.mod-security的版本是否重要?有什么建议吗?TIA

4 个答案:

答案 0 :(得分:6)

我使用的是Ubuntu但结果可能是相同的

SecRule REMOTE_ADDR "@ipMatch 66.249.0.0/16" "id:26091975,phase:2,pass,nolog,allow,ctl:ruleEngine=Off"

它在我的服务器上运行良好。如果你想采取日志只是在句子中摆脱nolog命令。 你可以更改面具以便更精确,但这取决于你。

注意使用正确的相位。在我的情况下是第2阶段。

更加自信阅读: https://github.com/SpiderLabs/ModSecurity/wiki/Reference-Manual#ipMatch

他们更喜欢@ipMatch运算符而不是regexp。在Twitter上关注@ModSecurity

答案 1 :(得分:3)

这适用于mod_security> = 2.8

SecRule REMOTE_ADDR "@ipMatch 192.168.1.100,192.168.1.50,10.10.50.0/24" phase:1,nolog,allow,ctl:ruleEngine=Off

答案 2 :(得分:2)

这个应该有用;允许所有以66.249.64.

开头的IP
SecRule REMOTE_ADDR "^66\.249\.64" "phase:1,nolog,allow"

答案 3 :(得分:0)

If you are under a load balancer use:

SecRule REQUEST_HEADERS:X-Forwarded-For "@Contains 37.161.74.122" phase:1,nolog,allow,pass,ctl:ruleEngine=off,id:1