最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
服务器 DDoS 防御配置如何做
时间:2026-08-07 10:38:50 编辑:袖梨 来源:一聚教程网
DDoS防御需分层设防:一、隐藏源站IP,用CDN+WAF+私有网络通信;二、系统层加固,启用SYN Cookie、调高连接队列、禁用ICMP响应;三、轻量自动封禁,配置DDoS Deflate;四、应用层限速,Nginx设置请求与连接限制。
服务器DDoS防御不能只靠一个工具或一条命令,得从网络层、系统层、应用层分层设防。核心思路是:藏好源站、收窄入口、限制异常、及时清洗。
一、先隐藏真实IP,切断攻击源头
攻击者找不到你的服务器真实IP,90%的流量型攻击就失效了。
- 用CDN(如Cloudflare、腾讯云CDN、阿里云DCDN)做第一道网关,所有用户请求先过CDN节点,再回源。记得在CDN后台开启“Web应用防火墙(WAF)”和“DDoS基础防护”
- 源站服务器必须关闭公网IP,只保留内网地址。通过私有网络(VPC)与CDN或负载均衡器通信
- 如果必须暴露管理端口(如SSH),改用非标准端口(如22222),并用安全组/IP白名单严格限制来源IP段,绝不要开放0.0.0.0/0
二、系统层加固:降低被拖垮的风险
即使有攻击进来,也要让服务器扛得住、不卡死。
- 启用SYN Cookie:确保/etc/sysctl.conf中包含net.ipv4.tcp_syncookies = 1,然后执行sysctl -p生效,可有效缓解SYN Flood
- 调高连接队列上限:net.core.somaxconn = 65535、net.ipv4.tcp_max_syn_backlog = 65535
- 缩短连接超时:net.ipv4.tcp_fin_timeout = 30、net.ipv4.tcp_tw_reuse = 1
- 禁用ICMP入站响应(防Ping Flood):iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
三、轻量级自动封禁:用DDoS Deflate守门
适合中小业务,在攻击初起时快速拉黑高频恶意IP。
- 安装后配置/etc/ddos/ddos.conf关键项:
— NO_OF_CONNECTIONS=120(Web服务建议100–150,避免误杀爬虫)
— DAEMON_FREQ=5(每5秒检查一次,平衡灵敏度与负载)
— BAN_PERIOD=1800(封禁30分钟,足够应对短时扫荡)
— FIREWALL=iptables(主流Linux默认适配)
— ONLY_INCOMING=true(只管进来的连接,防止误封出站IP)
- 启用端口级控制(可选):设ENABLE_PORTS=true,再配置PORT_CONNECTIONS="80:50,443:50",对HTTP/HTTPS单独限流
- 加白名单防误伤:IGNORE_IP_LIST="192.168.1.100,203.208.60.0/24"(填运维IP或可信网段)
四、应用层兜底:用Nginx限速防CC攻击
HTTP Flood和慢速攻击(如Slowloris)必须在Web服务器层面拦截。
- 在http块定义限速区:
limit_req_zone $binary_remote_addr zone=req_limit:10m rate=8r/s;
limit_conn_zone $binary_remote_addr zone=conn_limit:10m;
- 在server或location中启用:
limit_req zone=req_limit burst=20 nodelay;
limit_conn conn_limit 40;
- 增强抗慢速攻击能力:
client_header_timeout 15s;
client_body_timeout 15s;
keepalive_timeout 30s;