由于提供了下载而又限制了线程,所以总发现有人不断用多线程进行尝试,这样会大大增加服务器的负荷,这种事“损人不利己”!
为了惩罚这种人,决定写个SHELL,在crond里每3分钟运行一次,自动统计非法线程的IP和线程数量,然后自动将他的IP地址写到iptables里,来惩罚一下他们!
可惜,我不会写SHELL,在此,非常感谢夏天!他给了我很大的帮助!!!
选择it 学习it 使用it
分类:
2011-10-01 18:09:31
作者 platinum @ 22:38
#! /bin/bash
fuck_who()
{
netstat -an|grep "210.51.184.197:21"|grep -v LISTEN|grep -v ESTABLISHED|awk '{print $5;}'|awk -F'=' '{print $1;}'|sort|uniq -c|awk '{print $1"="$2;}'
}
for _un in $(fuck_who)
do
if [ $(echo $_un|awk -F'=' '{print $1;}') -gt 5 ]
then
iptables -I INPUT -s $(echo $_un|gawk -F'=' '{print $2;}') -p tcp --dport 21 -j DROP
fi
done
由于提供了下载而又限制了线程,所以总发现有人不断用多线程进行尝试,这样会大大增加服务器的负荷,这种事“损人不利己”!
为了惩罚这种人,决定写个SHELL,在crond里每3分钟运行一次,自动统计非法线程的IP和线程数量,然后自动将他的IP地址写到iptables里,来惩罚一下他们!
可惜,我不会写SHELL,在此,非常感谢夏天!他给了我很大的帮助!!!