Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1420481
  • 博文数量: 185
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2664
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-01 13:46
个人简介

鸟在笼中,恨关羽不能张飞;Survival of the fittest

文章分类

全部博文(185)

分类: Mysql/postgreSQL

2012-05-16 10:59:07

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://blog.chinaunix.net/uid-10915175-id-3209756.html

一个可以把SSH连接错误超过5次的IP,自动添加到黑名单的脚本。有一定防扫描的功能,虽然说网上已经有类似的软件了,但还是想自己写个而已


#! /bin/bash 

cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /tmp/denyhosts
 
cat /var/log/secure|awk '/Invalid user/{print $NF}'|sort|uniq -c|awk '{print $2"="$1;}' >> /tmp/denyhosts
 
TIMES="5" 
 
for i in `cat  /tmp/denyhosts` 
do 
        IP=`echo $i |awk -F= '{print $1}'` 
        NUM=`echo $i|awk -F= '{print $2}'` 
        if [ $NUM -gt $TIMES ]; 
        then 
         grep $IP /etc/hosts.deny > /dev/null 
          if [ $? -gt 0 ]; 
          then 
          echo "sshd:$IP" >> /etc/hosts.deny 
          fi 
        fi 
done
 


本文出自 “单身贵族” 博客,请务必保留此出处http://blog.chinaunix.net/uid-10915175-id-3209756.html

阅读(3260) | 评论(1) | 转发(1) |
给主人留下些什么吧!~~

Lyn_2015-11-20 19:08:22

#iptables -t filter -A INPUT -p tcp --dport 22 -m state --state NEW -m  recent --name SSHPOOL --rcheck --seconds 60 --hitcount 3 -j DROP
#iptables -t filter -A INPUT -p tcp --dport 22 -m state --state NEW -m  recent --name SSHPOL --set -j ACCEPT
使用iptables两行就可以解决