Ubuntu modsecurity白名单ip范围

Ubuntu modsecurity白名单ip范围,ubuntu,apache2,googlebot,mod-security,mod-security2,Ubuntu,Apache2,Googlebot,Mod Security,Mod Security2,我试图在Ubuntu12.04服务器上的modsecurity上列出一系列IP(谷歌机器人)。例如,以下是我需要列入白名单的范围: 66.249.64.0/19 我已经尝试了其他人建议的几种方法,但只有单个IP被阻止,当我尝试作为一个范围时,白名单被忽略。我已经在文件底部的一个新部分的/usr/share/modsecurity crs/modsecurity_crs_10_config.conf中添加了该规则 这项工作: SecRule远程地址“^66.249.65.3”阶段:1,nolog,

我试图在Ubuntu12.04服务器上的modsecurity上列出一系列IP(谷歌机器人)。例如,以下是我需要列入白名单的范围:

66.249.64.0/19

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

这项工作:

SecRule远程地址“^66.249.65.3”阶段:1,nolog,allow,ctl:ruleEngine=Off

这些不起作用:

SecRule远程地址“^66.249.64.0/19”阶段:1,nolog,allow,ctl:ruleEngine=off

SecRule远程地址“@ipMatch 66.249.64.0/19”阶段:1,无日志,允许

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


我已经看到了一些不同的语法建议,但似乎没有一个适合我的安装。mod security的版本重要吗?有什么建议吗?TIA

这一个应该有效;允许所有IP以
66.249.64开头。

SecRule REMOTE_ADDR "^66\.249\.64" "phase:1,nolog,allow"

这适用于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

我正在使用Ubuntu,但结果可能是一样的

SecRule REMOTE_ADDR "@ipMatch 66.249.0.0/16" "id:26091975,phase:2,pass,nolog,allow,ctl:ruleEngine=Off"
它在我的服务器上运行得很好。如果你想获取日志,只需去掉句子中的nolog命令。 为了更精确,您可以更改遮罩,但这取决于您

注意使用正确的阶段。在我的例子中是阶段2

要更自信,请阅读:


他们更喜欢@ipMatch operator而不是regexp。如果您正在使用负载平衡器,请在Twitter上遵循@ModSecurity:

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

我使用的是mod security 2.2,安装在Ubuntu 12.04 LTS的apt get上。我在Modsecurity的博客上找到了这篇文章…>SecRule REMOTE\u ADDR“^192.168.10.69$“阶段:1,日志,允许:请求,但它没有解释如何插入ip范围。有什么想法吗?这是因为它有一个规则ID,现在似乎是必需的。
匹配任何字符,所以我认为这应该是
\。