fail2ban是一款强大的主动防御软件,,可以监控大多数常用服务器软件,可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作,有需要的赶快下载吧!
功能介绍
1、支持大量服务。如sshd,apache,qmail,proftpd,sasl等等 2、支持多种动作。如iptables,tcp-wrapper,shorewall(iptables第三方工具),mail notifications(邮件通知)等等。 3、在logpath选项中支持通配符 4、需要Gamin支持(注:Gamin是用于监视文件和目录是否更改的服务工具) 5、需要安装python,iptables,tcp-wrapper,shorewall,Gamin。如果想要发邮件,那必需安装postfix/sendmail
使用方法
//下载rpmforge (里面有大量最新的rpm包) # wget URL< 此URL请用扩展阅读中的地址替换> //安装rpmforge # rpm -ivh rpmforge-release-0.3.6-1.el5.rf.i386.rpm //用yum安装fail2ban # yum install fail2ban 安装完成后,fail2ban 的设定档在这里 # /etc/fail2ban fail2ban.conf 日志设定文档 jail.conf 阻挡设定文档 /etc/fail2ban/filter.d 具体阻挡内容设定目录 默认fail2ban.conf里面就三个参数,而且都有注释。 ------------------------------- #默认日志的级别 loglevel = 3 #日志的目的 logt*arget = /var/log/fail2ban.log #socket的位置 socket = /tmp/fail2ban.sock ------------------------------- jail.conf配置里是fail2ban所保护的具体服务的配置,这里以SSH来讲。 在jail.conf里有一个[DEFAULT]段,在这个段下的参数是全局参数,可以被其它段所覆盖。 ------------------------------- #忽略IP,在这个清单里的IP不会被屏蔽 ignoreip = 127.0.0.1 172.13.14.15 #屏蔽时间 bantime = 600 #发现时间,在此期间内重试超过规定次数,会激活fail2ban findtime = 600 #尝试次数 maxretry = 3 #日志修改检测机制 backend = auto [ssh-iptables] #激活 enabled = true #filter的名字,在filter.d目录下 filter = sshd #所采用的工作,按照名字可在action.d目录下找到 action = iptables[name=SSH, port=ssh, protocol=tcp] mail-whois[name=SSH, dest=root] #目的分析日志 logpath = /var/log/secure #覆盖全局重试次数 maxretry = 5 #覆盖全局屏蔽时间 bantime = 3600 ------------------------------- 对jail.conf进行一定的设置后,就可以使用fail2ban了。 //启动fail2ban # service fail2ban start 启动之后,只要符合filter所定义的正则式规则的日志项出现,就会执行相应的action。