2
公司服务器安全问题一直是个令人头疼的问题,许多运维的小伙伴一直在用脚本来监控服务器登录状态,然而脚本编写比较麻烦,今天就给大家推荐一款小而精致的防暴力破解工具
fail2ban ,他可以监控系统日志,如有人无限尝试 登录
SSH,FTP,SMTP,Nginx,等服务,就可以用表达式过滤分析,具有攻击行为的ip,并自动屏蔽这个IP,还可以发送邮件给系统管理员!

它的原理也比较简单,就是通过调用iptables等安全策略来达到放暴力破解的目的!

下面开始测试

环境:

centos7 ,IP 192.168.109.121

安装fail2ban

yum -y install epel-release    #epel库里就有fail2ban 直接安装epel库就可以使用
yum -y install fail2ban        #安装fail2ban

配置fail2ban

贴上官方文档:http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Definitions

grep -v "^#" /etc/fail2ban/jail.conf
 
[DEFAULT]
 
ignoreip = 127.0.0.1/8 
 
ignorecommand =
 
bantime  = 600     #屏蔽时间,-1是永久屏蔽
 
findtime  = 600     #设置限定时间内超过 最大尝试次数 限制次数即被封锁
 
maxretry = 3        #最大尝试次数
 
backend = auto     #日志修改后检测机制
   
usedns = warn      #ssh链接加速
 
logencoding = auto
 
enabled = false
[ssh-iptables] ## 分类设置(基于 SSHD 服务的防护)
 
enabled = true ## 是否开启防护,false 为关闭
 
filter = sshd ## 过滤规则 filter 名称,对应 filter.d 目录下的 sshd.conf
 
action = iptables[name=SSH, port=ssh, protocol=tcp] ## 动作参数
sendmail-whois[name=SSH, dest=you@example.com, sender=fail2ban@example.com, sendername="Fail2Ban"] ## 邮件通知参数
                          ## 收件人地址           ## 发件人地址
logpath = /var/log/secure ## 检测系统登陆日志文件
 
maxretry = 3 ## 最大尝试次数

查看iptables等状态

image.png
image.png

用客户端测试一下

用 Powershell试试错误登录三次的后果
image.png
果然。。。。。错误3次后就登不上了
image.png
看看日志
image.png
等待600秒看看能登上么
image.png
可以登录了


iXiAo9
11 声望1 粉丝