核心是早发现、快响应、准隔离;通过实时采集cpu、内存、连接数、网络吞吐、磁盘i/o等指标,结合动态基线告警、自动封禁、进程分析与完整日志溯源实现dos主动防御。

配置系统性能监控防范拒绝服务(DoS)攻击,核心是早发现、快响应、准隔离。重点不是等攻击发生后再处理,而是通过持续观测资源异常波动,识别攻击前兆并自动干预。
实时采集关键性能指标
拒绝服务攻击通常表现为CPU、内存、连接数或网络吞吐量的突增。需在操作系统层部署基础监控,覆盖以下维度:
- CPU使用率:持续高于85%且无业务增长支撑时,可能被恶意进程占用
- 内存与交换空间:可用内存快速下降、swap频繁读写,提示内存耗尽型攻击
-
并发连接数:如Linux中
netstat -an | grep :80 | wc -l或ss -s显示ESTABLISHED连接暴增 - 每秒新建连接数(SYN_RECV/ESTAB):远超日常基线(例如平时200/s,突增至10000+/s),高度疑似SYN洪水
- 磁盘I/O等待时间与队列长度:iowait持续>90%、avgqu-sz异常升高,可能遭遇I/O耗尽攻击
设置多级动态告警阈值
静态阈值易误报,应结合历史基线动态调整:
- 用Prometheus + Grafana或Zabbix建立7天滚动平均值,告警触发设为“当前值 > 基线均值 × 3 且持续2分钟”
- 对SSH/TCP连接数等敏感项,单独配置“5分钟内失败登录≥10次+并发连接≥500”复合条件告警
- 关键服务(如Web、数据库)进程数跌破阈值(如nginx worker进程
联动自动化响应机制
监控不能只看不行动。需将告警与执行脚本或防火墙规则绑定:
- 检测到单IP新建连接数>1000/分钟,自动调用iptables或nftables封禁该IP 1小时
- CPU连续5分钟>95%,触发
ps aux --sort=-%cpu | head -10抓取TOP进程,并根据进程名(如perl、python、curl)判断是否可疑,自动kill并记录 - 配合Windows Defender Exploit Guard或Linux的systemd-coredump,对异常崩溃进程自动保存core dump供溯源
保留可回溯的完整日志链
攻击分析依赖日志完整性:
- 启用系统审计日志(Linux auditd / Windows事件日志安全通道),记录进程启动、网络连接、用户登录等关键事件
- 所有监控数据(指标、告警、操作日志)统一发送至集中日志平台(如ELK或Splunk),保留至少90天
- 对高危操作(如防火墙封禁、进程终止)生成带操作人、时间戳、原因字段的审计记录,不可删除或覆盖











