Fail2ban是一个用于保护计算机系统免受暴力破解和恶意攻击的开源软件。它通过监视系统日志文件来检测恶意行为,例如登录失败、恶意扫描等,并采取预先定义的措施来应对这些行为,例如暂时禁止相关IP地址的访问。Fail2ban的工作原理是基于规则和动作。当它在系统日志中发现匹配预定义规则的行为时,它将执行与该规则相关联的动作。例如,如果它检测到一系列的SSH登录失败尝试,它可以暂时性地禁止来源IP地址,防止进一步的尝试。Fail2ban可以轻松地配置和定制,允许管理员根据他们的需求调整规则和动作。它是一个强大的安全工具,可以帮助保护服务器免受恶意攻击。
安装fail2ban
apt install -y fail2ban
配置fail2ban
fail2ban的目录为/etc/fail2ban
,在此目录下新建文件jail.local
,内容如下:
[sshd]
enabled = true
port = 16273 #ssh端口
findtime = 30m
maxretry = 1 #30分钟重试次数
bantime = 5d #黑名单封禁时间
ignoreip = 192.168.0.0/16 10.0.0.0/8 172.16.0.0/12 127.0.0.1/8 ::1
logpath = /var/log/auth.log #日志路径
backend = %(sshd_backend)s
配置完成后重启fail2ban生效
systemctl restart fail2ban
相关命令
systemctl status fail2ban #fail2ban状态
systemctl restart fail2ban #重启fail2ban
fail2ban-client status sshd #日志
cat /var/log/fail2ban.log
tail -f /var/log/auth.log
fail2ban-client set sshd unbanip 127.0.0.1 #封禁地址
fail2ban-client set sshd banip 127.0.0.1 #解封地址