码迷,mamicode.com
首页 > 其他好文 > 详细

部署fail2ban防止暴力破解ssh密码

时间:2015-02-10 16:54:24      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:

fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是调用防火墙屏蔽),如:当有人在试探你的SSH、SMTP、FTP密码,只要达到你预设的次数,fail2ban就会调用防火墙屏蔽这个IP,而且可以发送e-mail通知系统管理员,是一款很实用、很强大的软件!

步骤:

#wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm 
#rpm -ivh rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm    
#cd /etc/yum.repo.d/    
#wget http://mirrors.163.com/.help/CentOS6-Base-163.repo    
#yum install gamin-python fail2ban    
#chkconfig fail2ban on    
#vim /etc/fail2ban/jail.conf

[DEFAULT]    #全局设置    
ignoreip = 127.0.0.1   #忽略IP,在这个清单里的IP不会被屏蔽,多个用空格分开     
bantime  = 600         #屏蔽时间,以秒为单位     
findtime  = 600        #这个时间段内超过规定次数会被ban掉     
maxretry = 3           #全局最大尝试次数(经测试,有少量延迟)     
[ssh-iptables]            #相当于标签说明     
enabled  = true        #是否激活此项(true/false)     
filter   = sshd        #过滤规则filter的名字,对应filter.d目录下的sshd.conf     
action   = iptables[name=SSH, port=端口, protocol=tcp]  #动作的相关参数     
           sendmail-whois[name=SSH, dest=root, sender=fail2ban@mail.com] #发送邮件,不可注销,默认即可     
logpath  = /var/log/secure    #ssh日志记录的位置     
maxretry = 5                     #最大尝试次数,此项会覆盖全局中maxretry设置(次数会有少量延迟)


fail2ban 会按照你的过滤规则(filter   = sshd    也就是filter.d/sshd.conf)去查看相应的日志文件(logpath=/var/log/secure),然后在findtime = 600 “10分钟” (此时间以全局的为准)之内符合条件的记录下来,如果到达了maxretry = 5 就采取相应的动作action(ptables.conf和sendmail-whois.conf),并且限制的时间为bantime = 600。

部署fail2ban防止暴力破解ssh密码

标签:

原文地址:http://sw5720.blog.51cto.com/8812314/1613376

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!