要准确识别和监控服务器上的DDoS攻击峰值,管理员不能仅依赖简单的带宽使用率图表,而必须建立一套多维度的监控体系,核心上文归纳是:DDoS峰值的查看需要综合分析入站流量带宽、每秒包数(PPS)以及新建连接数(CPS)三个关键指标,通过Linux系统底层命令结合云服务商的安全中心日志,才能精准判断攻击类型与规模。 单纯关注流量往往会忽略小包攻击或应用层攻击,只有将网络层与应用层数据结合,才能还原攻击全貌。

核心指标解析:带宽、PPS与连接数
在深入具体操作之前,必须明确界定“峰值”在DDoS场景下的具体含义,DDoS攻击的本质是耗尽资源,因此峰值通常体现在以下三个维度:
- 流量带宽峰值: 这是最直观的指标,通常以Mbps或Gbps为单位,当攻击者发送海量数据包堵塞网络管道时,带宽会瞬间飙升,许多耗尽CPU或连接资源的攻击(如SYN Flood)可能流量并不大,但破坏力极强。
- 每秒包数峰值: 衡量服务器网卡和处理单元每秒需要处理的数据包数量,PPS过高会导致防火墙和路由器性能下降,即使总带宽未占满,服务器也会因为处理不过来而丢包。
- 新建连接数峰值: 针对TCP协议的攻击(如SYN Flood)会瞬间建立大量半开连接,监控CPS能帮助发现协议层面的异常。
Linux系统级实时监控命令
对于直接运维Linux服务器的管理员,系统自带的命令行工具是查看DDoS峰值的第一道防线,这些工具能提供毫秒级的实时数据,帮助判断当前负载是否由攻击引起。
使用iftop或nload监控实时带宽
iftop 是查看实时带宽占用的神器,它能显示各个IP连接的带宽使用情况,在攻击发生时,管理员可以通过 iftop -i eth0(eth0为网卡名)查看是否有某个特定IP或网段占用了异常高的入站流量,如果发现流量被单一IP源“打满”,这通常是典型的UDP Flood或ICMP Flood特征。nload 则更适合查看整体网卡进出流量的曲线图,直观展示带宽峰值。
使用netstat或ss分析连接状态
当怀疑遭受连接型攻击时,netstat -an 或 ss -an 是必用命令,重点统计 SYN_RECV 状态的连接数,执行 netstat -an | grep SYN_RECV | wc -l,如果这个数值在短时间内飙升到数千甚至上万,说明服务器正在遭受SYN Flood攻击,带宽可能正常,但服务器的连接表已被填满,无法处理正常用户请求。
查看系统日志与负载
通过 dmesg 或 /var/log/messages 查看内核日志,如果出现 “TCP: time wait bucket table overflow” 或 “kernel: nf_conntrack: table full, dropping packet” 等报错,说明连接跟踪表已满,这是DDoS导致系统瘫痪的确凿证据。

云服务商安全控制台的数据分析
对于部署在阿里云、腾讯云或AWS等云平台上的业务,单纯看服务器内部指标往往滞后,因为流量在到达服务器之前已经被云防火墙或负载均衡处理。查看DDoS峰值的最佳位置是云服务商的“DDoS基础防护”或“DDoS高防”控制台。
- 清洗与黑洞阈值: 云平台通常提供清洗阈值,当流量超过该阈值(例如5Gbps)时,云厂商会触发流量清洗,在控制台的“安全中心”或“网络监控”页面,可以清晰看到攻击发生时的“攻击流量峰值”和“攻击带宽峰值”,这些数据比服务器内部采集的数据更准确,因为它们记录了被防火墙拦截部分的流量。
- CC攻击与Web层峰值: 针对HTTP层的CC攻击,在云WAF(Web应用防火墙)控制台查看QPS(每秒请求数)峰值,如果QPS异常飙升,且请求特征单一(如频繁请求同一URL),则可判定为CC攻击。
深度流量抓包与日志分析
当上述监控手段确认遭受攻击但无法定位细节时,需要进行深度分析。
tcpdump抓包分析
使用 tcpdump -i eth0 -nn -c 1000 抓取前1000个数据包进行分析,如果抓包结果显示大量相同源IP、相同目标端口且长度固定的数据包,极有可能是僵尸网络发来的攻击包,如果发现大量源IP不同但目标端口均为随机高端口,可能是反射攻击。
Web服务器日志审计
针对应用层慢速攻击或CC攻击,分析Nginx或Apache的access.log,通过 awk 统计访问最频繁的IP和URL,发现某个User-Agent异常或对某个接口的请求频率远超正常用户行为,这就是应用层的攻击峰值体现。
应对高流量的专业防御策略
查看峰值的最终目的是为了防御,基于以上监控数据,建议采取以下分层防御策略:

- 启用SYN Cookie: 在系统内核参数中开启
net.ipv4.tcp_syncookies = 1,这能有效缓解SYN Flood攻击,通过加密验证机制过滤非法连接。 - 部署高防IP与CDN: 如果监控发现攻击带宽峰值经常超过服务器带宽上限(例如攻击达到10Gbps而服务器只有100M带宽),必须将业务切换至高防IP,高防IP具备T级清洗能力,能将攻击流量引流至清洗中心,只将干净流量回源到服务器。
- 连接频率限制: 使用Nginx的
limit_req_zone模块或iptables的recent模块,对单个IP在单位时间内的连接数进行限制,一旦某IP连接数超过阈值,自动将其封禁。
相关问答
Q1:服务器带宽跑满了,如何快速判断是正常业务增长还是DDoS攻击?
A: 可以通过查看TCP连接状态和协议分布来区分,如果是正常业务增长,ESTABLISHED(已建立连接)状态会占主导,且PPS(每秒包数)与流量带宽的比例相对正常,如果是DDoS攻击,通常会伴随大量的 SYN_RECV(半开连接)状态,或者PPS数值极高但单个包极小(如64字节的小包攻击),这种“高带宽、低有效载荷”的特征是DDoS的典型表现。
Q2:为什么服务器内部监控显示流量不高,但网站却无法访问?
A: 这种情况通常属于“连接耗尽型攻击”或“应用层CC攻击”,攻击者并没有打满带宽,而是通过发送大量TCP连接请求耗尽了服务器的最大连接数(如65535个端口限制),或者通过CC攻击耗尽了Web服务器的CPU资源和数据库连接池,此时应重点监控服务器的CPU使用率、负载(Load Average)以及 netstat 统计出的 TIME_WAIT 和 SYN_RECV 数量。
能帮助您建立起完善的DDoS监控体系,如果您在具体操作中遇到疑难参数设置,或者想了解特定云厂商控制台的报表解读,欢迎在评论区留言,我们可以进一步探讨具体的实战案例。


















