IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    DDOS攻击解决过程

    longhao (longtask@gmail.com)发表于 2012-05-28 01:52:19
    love 0

    网站受到DDOS的攻击,Inbound最高请求58.85Mb/sec 。尽管一开始解决问题的思路是错误的,但是在这个过程中,我们思考问题的思路对团队的成长有所帮助,我们知道什么方法无法解决问题。解决问题的过程分为3个阶段:

         1:nginx端屏蔽访问

    修改nginx配置文件,添加如下记录

    location ~ /\/you_url {

        return 404;

    }

    问题:发现请求堵塞在haproxy上面去了

         2:修改haproxy的配置

    acl invalid_req url_sub -i c=220

    block if invalid_req 

    问题:依然不能解决haproxy堵塞的问题

         3:在haproxy机器上禁止IP访问。

    在nginx下找到IP最多的几个IP,到/data/management/logs中去执行

    cat www.access.log | awk -F \" '{print $7}' | sort | uniq -c | sort -rn | head -n 300 

    得到访问最多的IP列表

    通过vim的列编辑功能,限制这些ip的访问。(300个是可以继续加大的,看最后一行的最小值)

    iptables -I INPUT -s 218.66.51.197 -j DROP

    iptables -I INPUT -s 183.205.228.248 -j DROP

    iptables -I INPUT -s 59.39.181.217 -j DROP

    iptables -I INPUT -s 218.76.255.3 -j DROP

    iptables -I INPUT -s 110.81.116.67 -j DROP

    iptables -I INPUT -s 220.178.35.226 -j DROP

    iptables -I INPUT -s 218.207.198.17 -j DROP

    iptables -I INPUT -s 61.175.231.96 -j DROP

    iptables -I INPUT -s 221.193.244.115 -j DROP

    iptables -I INPUT -s 171.36.103.115 -j DROP

     

    解封1:

    iptables -L INPUT

    iptables -L --line-numbers 然后 iptable -D INPUT 序号

    解封2:

     iptables -F   来清空,(比较危险)

    iptables -D INPUT 数字

         4:网上防止DDOS攻击的方法(我们的思路是错误的,这个脚本的思路才是王道)

    正确的思路是查找Haproxy机器的所有连接IP数,然后查找IP数大于某个值的IP,在防火墙层面静止这些IP访问。

    安装

    wget http://www.inetbase.com/scripts/ddos/install.sh

    chmod +x install.sh

    ./install.sh

    卸载

    wget http://www.inetbase.com/scripts/ddos/uninstall.sh

    chmod +x uninstall.sh

    ./uninstall.sh

    具体使用可以去自行研究,可以把里面的脚本挪出来,简单粗暴的防止DDOS!



沪ICP备19023445号-2号
友情链接