编号:T-4873 2025-05-11 有效期:9999天 22人次
前言
前两天参加面试,面试官问我:如果攻击方采用代理ip进行cc攻击,我们应该如何应急?
由这个问题,引发了我的一些思考。他假定的场景是网站没有任何防护措施(就是在互联网上裸奔),好吧,既然没有任何的防护,在应急的时候,能不能通过脚本自动分析web日志,根据访问量自动拉黑ip?
脚本介绍
脚本设计思路:通过计划任务统计单位时间内的IP访问量,设定一个阀值,访问量超过阀值就自动拉黑。
#该脚本可以根据web日志的访问量,自动拉黑IP(加入计划任务,结合计划任务在固定时间段内执行,并根据该时间段内产生的日志进行分析)
#首先把日志保存到根目录一份,计算日志有多少行
line1=`wc -l /access_log|awk '{print$1}'`
cp /var/log/httpd/access_log /
#计算现有的日志有多少行
line2=`wc -l /var/log/httpd/access_log |awk '{print$1}'`
#根据上一次备份的日志和现在拥有的行数差值,作为单位时间内分析日志访问量
tail -n $((line2-line1)) /var/log/httpd/access_log|awk '{print$1}'|sort -n|uniq -c|sort >/1.txt
cat /1.txt|while read line
do
echo $line >/line
num=`awk '{print$1}' /line`
#设定阀值num,单位时间内操作这个访问量的ip会被自动拉黑
if (($num>12))
then
ip=`awk '{print$2}' /line`
firewall-cmd --add-rich-rule="rule family=ipv4 source address='${ip}' port port=80 protocol=tcp reject" --permanent
firewall-cmd --reload
fi
done
使用信息须知(必读)
①本主题所有言论和图片纯属会员个人意见,与本站立场无关
②本站所有主题由该帖子作者发表,该帖子作者与本站享有帖子相关版权
③樱桃游戏开服网仅提供信息交流平台,不介入任何交易过程,不承担安全风险和法律责任
④本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
⑤该页面资源下载仅保存于网盘,本站不涉及储存,用户下载仅供学习参考,不得用户商业用途
⑥如有侵权内容困扰请联系youxi@111.com,我们将针对版权信息及时予以删除