mirror of https://github.com/fengyuhetao/shell.git
20 lines
629 B
Bash
20 lines
629 B
Bash
|
#!/bin/bash
|
||
|
#mail xuel@51idc.com
|
||
|
#data 2017/2/23
|
||
|
|
||
|
#function: use iptables Brute force
|
||
|
SCAN=`/bin/egrep "Failed password for root" /var/log/secure|awk -F'[ :]+' '{print $13}'|sort|uniq -c|awk '{print $1"="$2;}'`
|
||
|
for I in ${SCAN}
|
||
|
do
|
||
|
SCANUM=`echo ${I}|awk -F'=' '{print $1}'`
|
||
|
SCANIP=`echo ${I}|awk -F'=' '{print $2}'`
|
||
|
if [ ${SCANUM} -gt 100 ] && [ -z "`/sbin/iptables -vnL INPUT | grep $SCANIP`" ];then
|
||
|
/sbin/iptables -I INPUT -s $SCANIP -m state --state NEW,RELATED,ESTABLISHED -j DROP
|
||
|
echo "`date` $SCANIP($SCANUM)">>/var/log/scanIP.log
|
||
|
fi
|
||
|
done
|
||
|
if [ $? -eq 0 ];then
|
||
|
service iptables save && service iptables restart
|
||
|
fi
|
||
|
|