开发者社区 问答 正文

建立的网站被DDoS攻击怎么排查?

网站被DDoS攻击怎么排查?

展开
收起
翼龙云TG_yilongcloud 2026-07-16 14:11:49 19 分享 版权
1 条回答
写回答
取消 提交回答
  • 国际云折扣优惠大全

    本文由云服务器代理商:翼龙云yilongcloud撰写。
    第一步:登录服务器,3 组命令判定是否遭遇 DDoS
    新版 Linux(CentOS8+/Ubuntu20+)默认移除 netstat、iftop,下面同时提供预装原生工具方案,断网无需额外安装。

    1. 排查半开连接,判断 SYN Flood 风险(替代过时 netstat)
      推荐原生ss,无需安装
      ss -nt state SYN-RECV | wc -l
      数值远高于日常几十条、达到上千上万条,基本判定 SYN 洪水攻击,握手队列被打满。
    2. 无 iftop 也能看全网流量分布,定位异常 IP
      方案 A(有 iftop):
      iftop -n -P
      方案 B(无法安装工具,系统自带):

    查看网卡总流量cat /proc/net/dev# 查看全量TCP连接IP分布
    ss -nt | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
    大量不同陌生独立 IP 持续产生巨量入站流量,单 IP 段占用 80% 以上带宽,是 DDoS 典型特征;若仅单一国内 / 海外访客 IP,大概率是爬虫而非攻击。

    1. 内核日志验证洪水攻击
      dmesg | tail -50
      出现关键词 possible SYN flooding、nf_conntrack: table full, dropping packet,可 100% 确认 TCP 层洪水攻击; 注意:部分云厂商底层接管内核日志,无输出不代表无攻击,需结合上面连接数综合判断。
      补充:区分「正常流量暴涨」和「DDoS 攻击」
      正常活动流量:IP 多为真实搜索引擎、固定访客,连接分散,无大量陌生海外动态 IP;Nginx 日志 UA 正常;
      DDoS 攻击:海量随机陌生 IP、代理 IP、僵尸网络 IP,连接瞬间爆发,无正常浏览器 UA。

    第二步:4 类常见 DDoS 攻击特征与对应处置思路

    1. SYN Flood(TCP 洪水,服务器连不上、ping 高丢包)
      特征:ss 查询大量 SYN-RECV 半开连接 处置:
      1.云主机不可自行修改内核 SYN Cookie(底层网络管控拦截),优先开启厂商基础流量清洗;
      2.安全组 /iptables 限制单 IP 最大 TCP 连接数;
      3.业务永久接入高防 IP 分流攻击流量。
    2. UDP Flood / DNS 放大攻击(53、游戏端口带宽跑满)
      特征:大量 UDP 数据包涌入,53 端口海量陌生外部 DNS 请求 处置:
      1.安全组直接 drop 所有无用 UDP 端口,仅保留业务必需端口;
      2.DNS 服务器关闭递归查询,仅响应自有域名;
      3.高防 IP 清洗 UDP 异常流量。
    3. HTTP Flood / CC 应用层攻击(CPU 打满、带宽不高、网站卡死)
      特征:80/443 端口海量 ESTABLISHED 连接,Nginx/Apache 进程 CPU 耗尽 排查补充命令(必用):
      统计80/443端口高频访问IP
      ss -nt state ESTABLISHED | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr# 查看网站访问日志高频恶意IPcat /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -nr | head -20
      处置:接入 WAF、配置单 IP 请求限速、人机验证码、封禁高频恶意 IP 段。
    4. 混合攻击(最常见:SYN+CC+UDP 同时发起)
      分层防御:底层高防清洗流量层攻击,WAF 拦截应用层 CC,安全组封堵异常端口。

    第三步:紧急止血操作(正确执行顺序,同步并行操作)
    纠正错误逻辑:不要先改 DNS,DNS 有 TTL 缓存,几分钟生效期服务器会持续被打,先做本地封堵止损
    1.第一层:云安全组 /iptables 临时封堵攻击源(立刻执行)
    o关闭所有非业务端口,仅放行 80、443、自定义管理端口;
    o针对攻击高频 IP 段添加黑名单,限制单 IP 最大并发连接; 简易 iptables 限流示例:限制单 IP 最多 15 条 TCP 连接
    iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 15 -j DROP
    2.第二层:立刻提交云厂商工单申请临时清洗 阿里云国际、AWS 均可免费开启基础 DDoS 应急清洗,告知业务遭受流量攻击,机房会临时分流脏流量。
    3.第三层:切换域名解析至高防 IP(同步操作,等待缓存生效) 修改域名 A 记录指向高防清洗 IP,所有访问流量先经过高防机房过滤,干净流量回源 ECS; 注意海外域名 TTL 建议调低至 300s,缩短等待时间。

    第四步:三道长期防御城墙,出海跨境业务标配
    第一道:高防 IP(底层流量清洗,抵御 SYN/UDP 洪水)
    海外独立站、AI 推理服务必备,阿里云国际高防、AWS Shield 高级防护可覆盖全球多地域节点; 攻击流量先在高防机房拦截,不会直达源站导致服务器卡死,按月付费成本远低于单次宕机损失。
    第二道:全球 CDN(拦截 CC、分散访问压力)
    搭配阿里云国际 CDN / CloudFront 托管静态资源、首页页面; CDN 边缘节点天然分流海量访问,CC 攻击很难穿透 CDN 到达后端 ECS,同时兼顾全球用户访问速度,满足 GDPR 缓存合规。
    第三道:Web 应用防火墙 WAF(拦截应用层 CC、爬虫、注入攻击)
    针对 HTTP/HTTPS 请求做深度检测,识别虚假 UA、高频扫描、恶意接口请求,自动拉黑攻击 IP,解决 CPU 被 CC 打满的问题。
    兜底防护:自动磁盘快照
    每日定时备份系统盘、数据盘,攻击造成文件损坏、勒索风险时,控制台几分钟回滚恢复业务;快照仅收取少量存储费用,无额外服务费。

    2026-07-16 14:59:55
    赞同 展开评论
问答分类:
问答地址: