得到一些虚假的请求打我的服务器。
想阻止任何包含http://的请求。
例:
domain.com/forum/function/component.php= http://bogusdomain.gov.ve/images/foo.txt
我想
RewriteRule ^(.*=http://) - [F]
会做到这一点,但似乎没有工作。
有什么build议么?
你没有提到一个操作系统,这不是你要求的(重写) – 但它确实阻止了攻击。
我使用Fail2Ban来阻止Ubuntu上的各种垃圾; 使用networking服务器日志,sshd日志和其他。
一个事件=一个正则expression式+一个日志文件。
一个规则可以说,当有NN事件发生的时候T在防火墙上为X分钟添加一个IP。 默认是10分钟…如果你不小心禁止了自己,这很好。 如果你不担心,可以设置更长的时间。
这种方法的好处是可以禁止来自该IP的所有stream量,而不仅仅是针对Web服务器的stream量。 此外,不要像REFUSED或FORBIDDEN这样的指示,交通可以简单地挂起,永远不会被传递或承认。
如果您担心这样的请求,您最好解决问题的根源,即在PHP中closuresallow_url_fopen。
至于重写规则…其他rewriterules工作? (即引擎是否启用?)^。 = HTTP://。 $应该符合我的想法,不需要括号,因为你没有重用匹配