大家怎么对抗这样的 DDoS 攻击? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
hzlzh
45.12D
V2EX    程序员

大家怎么对抗这样的 DDoS 攻击?

  •  1
     
  •   hzlzh
    PRO
    hzlzh 2017-07-08 17:48:30 +08:00 8003 次点击
    这是一个创建于 3018 天前的主题,其中的信息可能已经有所发展或是发生改变。
    如图,持续不断的请求不存在的图,造成内存负载超额,大家遇到这种事情会怎么解决?

    目前已经加了 403 和 iptables ban IP,但是依然屡禁不止。

    39 条回复    2017-08-03 11:50:51 +08:00
    jellybool
        1
    jellybool  
       2017-07-08 17:59:18 +08:00 via iPhone   1
    无他,找一个吃下这个流量的服务器就 OK。专门做抗 D 用....
    qcloud
        2
    qcloud  
       2017-07-08 17:59:58 +08:00   1
    @jellybool #1 我记得老哥就这样做过
    vus520
        3
    vus520  
       2017-07-08 18:00:14 +08:00   1
    上 CDN

    我感觉是不是 nginx 会比 apache 性能来得好啊,纯粹一个 URL,单机响应每秒几万是没问题的。
    jellybool
        4
    jellybool  
       2017-07-08 18:03:59 +08:00 via iPhone   1
    @qcloud 啊哈..认识的一个大佬有机器专门抗 d。
    hzlzh
        5
    hzlzh  
    OP
    PRO
       2017-07-08 18:08:35 +08:00
    @vus520 现在流量到是小事,因为每个访问都是 404 或者 4xx,日志文件都好多 G 了
    @jellybool 上 CDN 如果消耗了流量要交钱的。对方目标地址应该是我的主机独立 IP,我考虑关掉 ip 访问方式
    just1
        6
    just1  
       2017-07-08 18:10:29 +08:00   1
    @hzlzh 日志分析把量大的 ip 全加到 iptables 里,应该不会交给 apache 处理啊,是不是 ip 没封全
    hzlzh
        7
    hzlzh  
    OP
    PRO
       2017-07-08 18:11:31 +08:00
    @just1 已经用脚本筛选添加了,会变啊,简直是要 cron
    jellybool
        8
    jellybool  
       2017-07-08 18:13:27 +08:00 via iPhone   1
    @hzlzh 关啊...

    这种事情,本来就是应该做好负载均衡的。别人怎么怼坏一个 ip,至少保证瞬间切换到另外的机器上
    lyhiving
        9
    lyhiving  
       2017-07-08 18:14:00 +08:00 via Android
    识别 header 然后封
    usernametoolong
        10
    usernametoolong  
       2017-07-08 18:18:21 +0:00   1
    cc 而已 还以为是 UDP 攻击, 识别出攻击者然后给丢一个 301 或者 400 的状态码就能解决了。
    apache 可能会忙不过来吐血,能加个 nginx 做前端话效果好些。

    下一题
    vus520
        11
    vus520  
       2017-07-08 18:25:09 +08:00
    我们用 OVH 的机器也遇到这个神坑,每秒有个几千的请求,连接数 10~20 万左右,OVH 会当成攻击给黑洞了。傻了吧唧了。
    just1
        12
    just1  
       2017-07-08 18:33:50 +08:00
    @vus520 ovh 不是 480Gbps 的抗攻击吗。
    kmahyyg
        13
    kmahyyg  
       2017-07-08 18:35:46 +08:00 via Android   1
    东北大学有个 hosts.deny 列表,那个可以用来预防。这个吗,可以的话搞个 CF 五秒盾
    aksoft
        14
    aksoft  
       2017-07-08 18:44:50 +08:00
    @kmahyyg 东北大学那个是 ssh
    Admstor
        15
    Admstor  
       2017-07-08 18:53:37 +08:00   1
    你这个不能算是 DDOS
    前面加 nginx 这种请求数毛毛雨..
    至于日志文件...你没事记录这么多 40x 干嘛
    ericFork
        16
    ericFork  
       2017-07-08 18:55:13 +08:00   1
    @just1 #12 ovh 真的没有 480G
    Betacoefficient
        17
    Betacoefficient  
       2017-07-08 19:34:56 +08:00
    @ericFork 大佬们都用 ovh 么,vultr 没人用么
    hzlzh
        18
    hzlzh  
    OP
    PRO
       2017-07-08 19:37:08 +08:00
    42.59.180.209
    122.142.211.149
    111.26.36.96
    123.185.22.227
    111.26.36.96
    122.137.245.65
    123.185.22.227
    奇怪,这几个 ip 都是辽宁、吉林的
    Antidictator
        19
    Antidictator  
       2017-07-08 19:49:04 +08:00 via Android
    @hzlzh 请教一下关掉 ip 访问方式还怎么访问呢
    vebuqi
        20
    vebuqi  
       2017-07-08 21:12:12 +08:00
    高防 IP?
    ovear
        21
    ovear  
       2017-07-08 21:39:05 +08:00
    前面挂一个 nginx 就好了
    hzlzh
        22
    hzlzh  
    OP
    PRO
       2017-07-08 23:43:41 +08:00
    @Antidictator 用 IP shared 模式就好了。
    @ovear 刚才已经挂了 nginx
    Hardrain
        23
    Hardrain  
       2017-07-09 00:01:51 +08:00
    这算 CC 吧……看起来全是请求正常的内容

    除了抗 D 的主机外,如果 IP 随机性很高没法封(无论 Server Config 还是 iptables)
    那还可以考虑用 mod_security2 这类 WAF
    限制被攻击文件的访问频率 过高的 IP 暂时 Block 掉
    0ZXYDDu796nVCFxq
        24
    0ZXYDDu796nVCFxq  
       2017-07-09 00:07:18 +08:00
    12.4 reqs/s, 毛毛雨都算不上……
    gouchaoer
        25
    gouchaoer  
       2017-07-09 00:07:46 +08:00 via Android
    ip 在几万以下直接 iptables 封杀
    ryd994
        26
    ryd994  
       2017-07-09 00:26:47 +08:00 via Android
    Apache 啊……当然咯
    你用 Nginx 嘛,都不用限制频率
    不要用 Nginx 反代,反代没有任何意义
    Showfom
        27
    Showfom  
    PRO
       2017-07-09 00:45:21 +08:00 via iPhone   1
    你这是 cc 不是 DDoS

    DDoS 发包不会访问你 web 的 直接暴力干掉你服务器的带宽和 cpu
    evil4ngl3
        28
    evil4ngl3  
       2017-07-09 02:16:09 +08:00   1
    如果只是这样的攻击,一般称"CC"攻击。你可以使用 ossec,根据日志的访问频率,或者自己写规则,把访问量大的 IP,拉到系统防火墙里。这样 apache 的压力就没了。但是如果还有网络层的攻击,如 SYN flood、udp flood、tcp 分片等等。那就看你的主机带宽和性能了。一般来说几台肉鸡多开 syn flood,就可以搞死一台性能不错的服务器。
    ossec 有个坑,就是 iptables 的拉黑 IP 不能太多,不让 iptables 可能假死。所以你还要设置被拉黑 IP 的释放时间,根据实际情况自己调整。
    evil4ngl3
        29
    evil4ngl3  
       2017-07-09 02:19:24 +08:00
    被 D,最害怕的是什么?是不知道会攻击多长时间,不知道下一波流量有多大,不知道是谁,什么目的,而且警察不立案。买高防,钱就是无底洞。
    亲身经历峰值 30G 的 DDOS,放在腾讯云上,但是 IP 被运营商拉黑了。因为影响整个机房带宽了。。。。
    liuminghao233
        30
    liuminghao233  
       2017-07-09 10:07:01 +08:00 via iPhone
    拔网线换 ip
    shansing
        31
    shansing  
       2017-07-09 10:42:21 +08:00
    我好奇 return 444 会不会比 404/403 好些?
    blackboar
        32
    blackboar  
       2017-07-09 12:02:11 +08:00
    你这不是 ddos,只是 cc
    hzlzh
        33
    hzlzh  
    OP
    PRO
       2017-07-09 13:48:53 +08:00
    @evil4ngl3 我已经加了 iptables,而且是定时去加的。
    dai269619118
        34
    dai269619118  
       2017-07-09 16:34:37 +08:00
    加百度加速云 免费版的抗 d 效果挺不错的
    ryd994
        35
    ryd994  
       2017-07-09 18:00:17 +08:00
    @hzlzh 直接加 iptables,而不是用 ipset 的话,可能效果很差
    vus520
        36
    vus520  
       2017-07-09 21:59:00 +08:00
    @just1 感觉 OVH 是误杀了,根本就是正常请求,给我拦掉了
    lybtongji
        37
    lybtongji  
       2017-07-09 22:23:34 +08:00
    看了楼上说 CC 不算 DDoS,就特地看了下 Wiki,里面说 CC 是 DDoS 的一种
    evil4ngl3
        38
    evil4ngl3  
       2017-07-10 10:59:40 +08:00
    @hzlzh 多提供一些 IP 地址,扫描一下开放端口,反黑回去,在肉鸡上找到 DDos 的工具,分析一下。
    spartda
        39
    spartda  
       2017-08-03 11:50:51 +08:00
    直接使用第三方抗 D 服务啊。用了 1 年多的知道创宇抗 D 保,效果不错,然再在抗 D 保的控制面板中根据实际情况添加规则来防御,效果还不错。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1384 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 16:39 PVG 00:39 LAX 09:39 JFK 12:39
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86