没事学习学习,早上看了别人防止CC攻击的shell脚本,代码的风格跟自己有点不一样,而且感觉大部分博客都是你抄我,我抄你的,里面缺少些东西,例如echo到文本,那个文本根本就不存在,也没有创建的操作,而且使用的sendmail发的,我这本地没搞定sendmail,用的mailx来发邮件,重写的脚本如下:
#!/bin/bash
#author merci
iplist=`netstat -an |grep ^tcp.*:80|egrep -v 'LISTEN|127.0.0.1'|awk -F"[ ]+|[:]" '{print $6}'|sort|uniq -c|sort -rn| awk '$1>20'`
if [ ! -f 'denyip.log' ]
then
touch denyip.log
fi
if [[ ! -z $iplist ]]
then
for denyip in $iplist
do
denyiplist=`iptables -nL | grep $denyip`
if [[ -z $denyiplist ]]
then
iptables -I INPUT -s $denyip -j DROP & echo 1 > denyip.log
fi
done
if [[ `cat denyip.log` ] == 1 ]
then
echo -e 'DenyIp list\n $iplist' | mailx -s 'DenyIp list' shevechco@qq.com
rm -rf denyip.log >/dev/null 2>&1
fi
fi内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://sulao.cn/post/500
评论列表