CC攻击(Challenge Collapsar)是一种针对Web应用层的分布式拒绝服务攻击(DDoS)。与传统的DDoS攻击不同,CC攻击主要模拟大量正常用户请求来消耗服务器资源,而不是简单地用大流量淹没目标。
网络连接监控:
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
Web服务器日志分析:
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr | head -20
系统资源监控:
top
htop
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
server {
limit_conn addr 10;
limit_req zone=one burst=5 nodelay;
}
}
iptables:
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 100 -j ACCEPT
fail2ban:
# 安装
sudo apt install fail2ban
# 配置
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# 编辑/etc/sysctl.conf
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 8192
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
识别攻击源IP并临时封禁
iptables -I INPUT -s 攻击IP -j DROP
启用Web服务器的访问限制
CC攻击防御需要综合多种手段,建议根据实际业务情况制定防护策略并定期测试防护效果。