乡下猫 LINUX技术博客jabincn.blog.chinaunix.net
枫影谁用了
全部博文(137)
shell(27)
Linux命令(0)
Mysql(27)
Samba(4)
2010年(3)
2009年(1)
2008年(49)
2007年(56)
2006年(28)
叶绍琛
bzw073
qingshan
noiplee
mackon_j
mz198424
syuexfac
clover13
HonestQi
cynthia
格伯纳
cheerone
lalbull
origin20
lpss1
piggy200
bigwenwe
yankaiqi
分类: LINUX
2007-04-16 20:51:08
#! /bin/bash# 获取前 1 分钟内的 secure 记录,统计 ssh 认证失败的 IP 和其 失败次数SCANNER=`awk '/Failed/ {print $(NF-3)}' /var/log/secure |awk -F: '{print $NF}' |sort|uniq -c |awk '{print $1"="$2;}'`for i in $SCANNERdo # 取认证失败次数 NUM=`echo $i|awk -F= '{print $1}'` # 取其 IP 地址 IP=`echo $i|awk -F= '{print $2}'` # 若其在失败次数超过 5 次且之前没有被阻断过,那么添加一条策略将其阻断,并记录日志 if [ $NUM -gt 5 ] && [ -z "`/sbin/iptables -vnL INPUT|grep $IP`" ] then /sbin/iptables -I INPUT -s $IP -j DROP echo "`date` $IP($NUM)" >> /var/log/scanner.log fidone
上一篇:shc加密shell脚本
下一篇:MYSQL 列出某个月或是已知日期范围内的所有日期
登录 注册