参见英文答案 >
I am under DDoS. What can I do?4个
我有一个网站在过去一个月每天都在同一时间点击DDOS,经过一个月的研究和查明错误,我们制定了一个bash脚本,如果连接在一分钟内达到80个最大连接,那么IP被禁止并放入IPTABLES.
我有一个网站在过去一个月每天都在同一时间点击DDOS,经过一个月的研究和查明错误,我们制定了一个bash脚本,如果连接在一分钟内达到80个最大连接,那么IP被禁止并放入IPTABLES.
这工作了两天很好,我觉得我终于解决了这个问题.
但是,现在这个人正在发送多个IP,每个IP上只有一个连接(请查看此处的输出http://pastebin.com/7AJqBfJa).这使得网站失效就像一个IP每分钟发送150个连接时一样.
这当然是一个完全不同的球赛,当涉及到防止DDOS,我正在寻求大师的帮助和任何足够好的人,以提供一些建议.在这一点上,我不知道如何解决这个问题,任何帮助将不胜感激.
解决方法
正如Niall所说,mod_evasive在这种情况下工作得很好,我最近用它来阻止我在我的一个网站上遇到的一个非常类似的问题.它有助于您在单个IP上没有收到大量连接,但您确实看到服务器上出现了不自然的模式.
在我的情况下,我也写了大约here,我安装了mod_evasive并使用以下设置对其进行了配置:
<IfModule mod_evasive20.c> DOSHashTableSize 3097 DOSPageCount 3 DOSSiteCount 100 DOSPageInterval 3 DOSSiteInterval 5 DOSBlockingPeriod 300 DOSLogDir "/var/log/httpd/modevasive/" DOSEmailNotify your@emailaddress.com </IfModule>
基本上,如果一个IP在5秒内请求相同的资源(文件)3次;或者在5秒内对任何文件进行100次点击;然后,Apache将拒绝对该文件的进一步请求.
如果你想增强这个脚本;您可以在命中参数时触发系统命令.就我而言,我将此命令添加到上面的配置中:
DOSSystemCommand "/usr/bin/sudo /usr/sbin/csf -td %s 3600"
这使我的防火墙CSF阻止IP一小时.您可以轻松编写一个iptables脚本来做同样的事情,但CSF让我很容易.
无论如何希望能帮助你钉住你的DDOS攻击者!