实现DDOS攻击自动封禁IP的shell脚本

概述

今天分享一个Shell脚本,主要是用来解决DDOS攻击的简单版。


需求

请根据web日志或者或者网络连接数,监控当某个IP并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP。

防火墙命令为:iptables-I INPUT -s IP地址 -j DROP。

练习使用日志下载地址:https://files.cnblogs.com/files/clsn/access-web-log.zip

分享一个实用的shell脚本--实现DDOS攻击自动封禁IP

脚本实现

#!/bin/bash
############################################################## File Name: ddos_check.sh#############################################################Info_File=/tmp/ddos_check.log#从连接数获取#netstat -lant|awk -F "[ :] " \'/180:80/{clsn[$6]  }END{for(pol in clsn)print pol,clsn[pol]}\' >$Info_File# 从日志获取awk \'{hotel[$1]  }END{for(pol in hotel)print pol,hotel[pol]}\' access.log|sort -nk2 -r >$Info_Filewhile read line do  Ip_Add=`echo $line |awk \'{print $1}\'` Access=`echo $line |awk \'{print $2}\'` if [ $Access -ge 10000 ] then #echo $Ip_Add iptables -I INPUT -s $Ip_Add -j DROP fidone <$Info_File
分享一个实用的shell脚本--实现DDOS攻击自动封禁IP

脚本执行结果

./ddos_check.sh
iptables -L
分享一个实用的shell脚本--实现DDOS攻击自动封禁IP

内容出处:,

声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。文章链接:http://www.yixao.com/soft/12416.html

发表评论

登录后才能评论