我有模型安全2在Ubuntu 14.04 LTS 服务器。我看到了下面的教程: http://blog.cherouvim.com/simple-dos-protection-with-mod_security/
不幸的是,上面的方法对我不起作用,apache 错误:
* Restarting web server apache2 [fail]
* The apache2 configtest failed.
Output of config test was:
AH00526: Syntax error on line 226 of /etc/modsecurity/modsecurity.conf:
ModSecurity: No action id present within the rule
Action 'configtest' failed.
Apache 错误日志可能有更多信息。
你能推荐一些类似的东西吗?
答案1
https://launchpad.net/ubuntu/trusty/+source/modsecurity-apache
Ubuntu 有 ModSecurity 2.7+,需要 [1]
- 添加的规则必须有ID操作,并且必须是数字。
因此,最好的办法是将 ID 添加到这些规则中,这样就可以了。例如规则
SecRule ip:block "@eq 1" "phase:1,deny,log,logdata:'req/sec: %{ip.requests}, blocks: %{ip.blocks}',status:403"
应该
SecRule ip:block "@eq 1" "id:12345,phase:1,deny,log,logdata:'req/sec: %{ip.requests}, blocks: %{ip.blocks}',status:403"
或者其他尚未被其他规则使用的 ID。
[1]https://github.com/SpiderLabs/ModSecurity/blob/master/CHANGES