常见症状:
诊断工具:
# 查看网络连接
netstat -antp
ss -s
# 监控带宽使用
iftop -n
nload
# 检查系统资源
top
htop
vmstat 1
网络层防护:
# 使用iptables临时封禁IP
iptables -A INPUT -s [攻击IP] -j DROP
# 限制连接速率
iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 50 -j DROP
iptables -A INPUT -p tcp --dport 80 -m limit --limit 50/minute --limit-burst 200 -j ACCEPT
启用SYN Cookies:
sysctl -w net.ipv4.tcp_syncookies=1
调整内核参数:
# 增加半连接队列大小
sysctl -w net.ipv4.tcp_max_syn_backlog=2048
# 减少SYN+ACK重试次数
sysctl -w net.ipv4.tcp_synack_retries=2
基础设施防护:
系统加固:
# 禁用ICMP重定向
sysctl -w net.ipv4.conf.all.accept_redirects=0
# 启用IP欺骗防护
sysctl -w net.ipv4.conf.all.rp_filter=1
服务配置优化:
监控与告警:
Fail2ban:
# 安装
apt-get install fail2ban # Debian/Ubuntu
yum install fail2ban # CentOS/RHEL
# 配置示例(/etc/fail2ban/jail.local)
[sshd]
enabled = true
maxretry = 3
bantime = 3600
DDoS deflate:
wget https://www.inetbase.com/scripts/ddos/install.sh
chmod +x install.sh
./install.sh
Cloudflare/ArvanCloud等CDN服务:
通过以上措施的综合应用,可以显著提高Linux服务器对抗拒绝服务攻击的能力。