网站被 DDoS 攻击了怎么办?中小企业应急响应流程

网站被 DDoS 攻击了怎么办?中小企业应急响应流程 封面配图

早上九点,客服群突然炸了:客户说网站打不开,你自己刷新页面转了半分钟最后超时,登录服务器一看带宽(服务器的网络数据传输能力)流量图直接顶到上限。这就是典型的 DDoS(分布式拒绝服务攻击)场景——攻击者用海量无效请求把你的带宽、连接数或计算资源耗尽,让正常用户进不来。对没有专职安全团队的中小企业来说,最缺的不是防护理论,而是一套拿到就能用的应急响应流程。这篇文章会教你从确认攻击、紧急止损、恢复业务到长期加固的完整步骤,帮助你把停机时间压到最短,大部分操作可以在 30 分钟内落地。

第一步:先确认是不是 DDoS 攻击

打开网站慢或者打不开,原因很多:服务器宕机、数据库锁死、证书过期、 CDN(内容分发网络)配置错误都可能造成类似现象。先花 5 分钟确认攻击类型,后面的动作才不会跑偏。

登录服务器后,按顺序执行这几条命令(DNS 相关判断放在下一步):

# 查看实时带宽流量,确认是否被大流量打满
iftop -nNP

# 统计当前 TCP 连接状态分布,CC 攻击会看到大量 ESTABLISHED 或 SYN_RECV
ss -ant | awk '{print $1}' | sort | uniq -c | sort -rn

# 找出连接数最高的来源 IP
ss -ant | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -rn | head -20

# 查看 Web 访问日志中请求最猛的 IP 和 URL
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -rn | head -20

# 确认域名当前解析指向的 IP,排查是否被 DNS(域名解析系统)劫持或解析错误
dig +short yourdomain.com

判断依据可以简化成三句话:带宽跑满且来源 IP 高度分散,大概率是流量型 DDoS;连接数上万但带宽不高、来源集中在少数 IP,多半是 CC 攻击(针对应用层的 HTTP 请求洪水);如果是某几个 URL 被高频请求(比如登录接口、搜索接口),就是应用层定向攻击。确认类型之后,你才能决定是在服务器上自救,还是必须借助上游防护。想了解服务器层面的基础排查思路,可以参考服务器分类与配置知识里的相关文章。

DDoS 攻击流量监控示意图

第二步:紧急止损,把影响压到最小

确认攻击后,先做两件立刻见效的事:封禁明显的攻击源,以及给服务器减负。

封禁攻击 IP。 从上面的日志统计里挑出连接数异常的 IP,直接写入防火墙:

# 单个 IP 封禁
iptables -I INPUT -s 1.2.3.4 -j DROP

# 封禁整个 C 段(攻击来自同一网段时)
iptables -I INPUT -s 1.2.3.0/24 -j DROP

给应用层减压。 如果是 CC 攻击,在 Nginx 里加两条限流规则就能拦掉大部分无效请求:

# 在 http {} 块中定义限流区域:每个 IP 每秒最多 10 个请求
limit_req_zone $binary_remote_addr zone=perip:10m rate=10r/s;

server {
    location / {
        limit_req zone=perip burst=20 nodelay;
    }
}

改完执行 nginx -t && nginx -s reload 让配置生效。这里有个经验值:正常电商站的首页刷新不会超过每秒 5 个请求,把阈值定在 10-20 之间,既能挡住攻击脚本,又不太容易误伤真实用户。另外,把静态资源交给 CDN 承接、只在源站处理动态请求,也能让服务器在攻击期间多撑一段时间;CDN 相关的加速原理可以延伸阅读网站优化与页面加速实践。面向外贸场景的站点,还可以参考网站安全防护专题中关于攻击预防的长期做法。

还有一个容易忽略的动作:通知你的主机服务商。很多中小企业用的是普通虚拟主机或 VPS(虚拟专用服务器),当攻击流量超过百兆级别时,服务器自身已经无力招架,只有机房上游的清洗能力才挡得住。报障时直接提供攻击开始时间、攻击类型判断和峰值流量,服务商会更快响应。

第三步:评估恢复方案,必要时切换高防

如果攻击持续超过一小时还没有衰减迹象,就该考虑升级应对手段了。这一步的核心是判断:扛不住的到底是带宽,还是应用本身。

流量型攻击(UDP 洪水、SYN 洪水这类)靠服务器软件无解,因为攻击包在到达网卡之前就把带宽吃光了。此时唯一有效的路径是接入高防服务:流量先经过服务商的清洗中心,恶意流量被过滤掉,正常请求再回源到你的服务器。以 Hostease 的高防方案为例,接入后源站 IP 会被替换成防护节点地址,攻击流量在节点层就被吸收,业务恢复时间通常可以压缩到分钟级。从网络架构上看,这类防护与云技术服务的弹性防护思路是一脉相承的。

切换前的三个检查动作:

  • 确认 DNS 解析权在自己手里,能独立修改 A 记录指向防护节点
  • 检查 SSL(安全套接层加密协议)证书是否可以同步部署到防护节点
  • 评估费用模式(价格截至 2026 年 10 月,以官网实时价格为准):按防护带宽计费还是按月套餐,攻击结束后是否可以退回普通线路

CC 攻击则可以在应用层先自救:把验证码加到登录和查询接口、临时关闭非核心的大计算量功能(如站内搜索)、对 API 接口启用鉴权。这些改动小,但能把攻击成本抬高,很多低成本 CC 攻击会因此放弃。

普通服务器与高防节点流量对比示意图

第四步:恢复后复盘,补齐长期防护

攻击结束不是终点。每次 DDoS 攻击都暴露了架构里的薄弱环节,趁记忆还新鲜做一次复盘,比攻击后再被打一次便宜得多。

先算清这次攻击的账:持续了多久、峰值多少带宽、影响多少订单或询盘、停机一小时对你值多少钱。这笔账决定了你在防护上值得投入多少预算——一个日均询盘 10 个的展示站和一个每天成交 50 单的外贸商城,合理的防护等级完全不同。关于攻击手法和网络安全的整体认知,可以系统性浏览网络安全专栏的历史文章。

然后把防护动作固化下来,这几项建议在一个月内完成:

  1. 给域名接入 CDN 并隐藏源站真实 IP,攻击者拿不到源站地址,直连攻击就无从下手
  2. 部署监控告警,带宽超过日常峰值 3 倍时自动通知,别等客户投诉才知道被打了
  3. 每季度做一次备份恢复演练,确认被攻击导致数据损坏后能在 2 小时内重建站点
  4. 和主机服务商确认升级高防的流程和时效,把联系方式写进内部应急预案

如果你的网站承载着实际业务订单,选择一款自带基础防护的主机方案可以省掉很多临时应对的麻烦。Hostease 的独立服务器和 VPS 主机方案提供基础流量清洗,配合 CDN 使用能覆盖绝大多数中小规模攻击场景,具体防护规格可以在选购时向客服确认。

总结

DDoS 攻击对中小企业来说不是”会不会遇到”的问题,而是”遇到时有没有预案”的问题。回顾一下这套流程的核心动作:先确认攻击类型,再封 IP、限流紧急止损,扛不住就切高防,最后复盘补齐长期防护。建议你现在就把这篇文章里的检查命令存进运维手册,并把服务商的高防升级路径确认清楚——如果你需要一套开箱即用的防护方案,可以考虑带流量清洗能力的主机产品,把专业的事交给机房上游处理,自己专注业务本身。

发表评论