下一篇 分享链接 返回 返回顶部

nginx防御CC攻击教程

发布人:速云-小陈 发布时间:2022-11-06 23:27 阅读量:1260

CC攻击即http flood,以攻击成本低(只需数台http代理服务器即可实现攻击)、隐蔽性强(中小CC攻击一般不会造成网络瓶颈)、难防御(与正常访问的请求很难区分开)、威力强大(造成和DDOS流量攻击一样的效果,网站长时间无法打开)等特点著称。常规的http flood防御为JS弹回,二次请求验证加入白名单 和 多层缓存(七层、四层共同缓存)实现防御体。 

 

CC攻击,首先造成的后果往往是被攻击服务器CPU爆满、内存占用高、甚至磁盘IO高占用。通常服务器上有永远处理不完的任务,所以,CC攻击,也是以拒绝服务为目的的攻击,属于DDOS攻击中的一种。 

 

那么CC攻击应该如何防御呢? 

 

首先站长朋友需要冷静下来,对手攻击你的项目,目的就是要你自乱阵脚,冷静下来,才好准备拔剑迎战。 

 

分析量有多少: 

netstat -an | grep ':80 ' -c

 

这是判断80端口的连接数,用这个数字与网站上第三方统计代码相比对,如果差距悬殊,甚至服务器卡到统计不出来,那么就肯定是CC攻击。 

如果资源占用太高甚至SSH命令执行都困难,先暂停一段时间的WEB服务(不要觉得失去什么,服务已经无法访问,何必留著继续耗资源?) 

 

1.新手必备:限制访问速率 

使用http://tengine.taobao.org/document_cn/http_limit_req_cn.html中的CONF字段配置限制语句 #详细后续编辑# 

 

2.擒賊擒王:找出攻擊共同特征 

按连接数排序 

 

netstat -nat|grep ":80"|awk '{print $5}' |awk -F: '{print $1}' | sort| uniq -c|sort -n

 

找出连接数最大的IP(假设是22.00.**.11),在日志中匹配 

 

cat /log/nginx/access.log | grep "22.00.**.11" | more

 

找出访问日志中攻击者所用工具的特征,然后尝试在conf中封禁掉。 

 

3.报仇不留情:封禁 

 

假如攻击者使用工具的UA包含“Bench”字段,那么可以在conf中屏蔽掉: 

 

location /{if ( $http_user_agent ~ "Bench" ) {return 444;}}

 

附录:常见防御CC攻击算法 

 

日志分析 

将日志中访问频率过高的IP封禁 

将日志中不符合人的特征的IP封禁(同一URL访问不合理次数等等) 

目录结构
全文
微信客服 微信客服
微信公众号 微信公众号
服务热线: 15555444774
电子邮箱: admin@suyun.net
关于Centos官网停止维护导致源失效解决方案
重大通知!用户您好,以下内容请务必知晓!

由于CentOS官方已全面停止维护CentOS Linux项目,公告指出 CentOS 7和8在2024年6月30日停止技术服务支持,详情见CentOS官方公告。
导致CentOS系统源已全面失效,比如安装宝塔等等会出现网络不可达等报错,解决方案是更换系统源。输入以下命令:
bash <(curl -sSL https://linuxmirrors.cn/main.sh)

然后选择中国科技大学或者清华大学,一直按回车不要选Y。源更换完成后,即可正常安装软件。

如需了解更多信息,请访问: 查看CentOS官方公告

查看详情 关闭
网站通知