首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

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

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

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

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

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

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

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

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

    DDoS 发包不会访问你 web 的 直接暴力干掉你服务器的带宽和 cpu
        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 的释放时间,根据实际情况自己调整。
        29
    evil4ngl3   2017-07-09 02:19:24 +08:00
    被 D,最害怕的是什么?是不知道会攻击多长时间,不知道下一波流量有多大,不知道是谁,什么目的,而且警察不立案。买高防,钱就是无底洞。
    亲身经历峰值 30G 的 DDOS,放在腾讯云上,但是 IP 被运营商拉黑了。因为影响整个机房带宽了。。。。
        30
    liuminghao233   2017-07-09 10:07:01 +08:00 via iPhone
    拔网线换 ip
        31
    shansing   2017-07-09 10:42:21 +08:00
    我好奇 return 444 会不会比 404/403 好些?
        32
    blackboar   2017-07-09 12:02:11 +08:00
    你这不是 ddos,只是 cc
        33
    hzlzh   2017-07-09 13:48:53 +08:00
    @evil4ngl3 我已经加了 iptables,而且是定时去加的。
        34
    dai269619118   2017-07-09 16:34:37 +08:00
    加百度加速云 免费版的抗 d 效果挺不错的
        35
    ryd994   2017-07-09 18:00:17 +08:00
    @hzlzh 直接加 iptables,而不是用 ipset 的话,可能效果很差
        36
    vus520   2017-07-09 21:59:00 +08:00
    @just1 感觉 OVH 是误杀了,根本就是正常请求,给我拦掉了
        37
    lybtongji   2017-07-09 22:23:34 +08:00
    看了楼上说 CC 不算 DDoS,就特地看了下 Wiki,里面说 CC 是 DDoS 的一种
        38
    evil4ngl3   2017-07-10 10:59:40 +08:00
    @hzlzh 多提供一些 IP 地址,扫描一下开放端口,反黑回去,在肉鸡上找到 DDos 的工具,分析一下。
        39
    spartda   2017-08-03 11:50:51 +08:00
    直接使用第三方抗 D 服务啊。用了 1 年多的知道创宇抗 D 保,效果不错,然再在抗 D 保的控制面板中根据实际情况添加规则来防御,效果还不错。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2291 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 28ms · UTC 15:24 · PVG 23:24 · LAX 07:24 · JFK 10:24
    ♥ Do have faith in what you're doing.