Linux防火墙可通过以下方式防范DDoS攻击:
- 基础规则配置
- 使用
iptables限制异常流量,如限制SYN连接速率:
iptables -A INPUT -p tcp --syn -m limit --limit 10/s --limit-burst 20 -j ACCEPT。 - 阻止无效数据包:
iptables -A INPUT -m state --state INVALID -j DROP。
- 使用
- 内核参数调优
- 启用SYN Cookie:
echo 1 > /proc/sys/net/ipv4/tcp_syncookies。 - 调整SYN队列长度:
net.ipv4.tcp_max_syn_backlog = 2048(需写入/etc/sysctl.conf并执行sysctl -p)。
- 启用SYN Cookie:
- 流量控制与限速
- 限制IP连接数:
iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 50 -j REJECT。 - 使用
tc工具限制带宽:tc qdisc add dev eth0 root tbf rate 1mbit burst 32kbit latency 400ms。
- 限制IP连接数:
- 专业工具辅助
- 部署
Fail2ban:自动检测异常登录并封禁IP。 - 使用
DDoS Deflate:监控并屏蔽高连接数IP。
- 部署
- 网络层防护
- 与ISP合作实施上游流量清洗。
- 采用CDN分散流量(如Cloudflare),减轻服务器压力。
注:以上措施需结合服务器资源及攻击类型调整,硬件防火墙或云服务可提供更高级别的防护。