Fail2ban 安装配置

环境

  • 系统:Debian 12 x86_64
  • Fail2ban 版本:0.11.2

1. 安装软件


apt update

apt install fail2ban

2. 启动 Fail2ban

启动服务:


systemctl start fail2ban

设置开机自启:


systemctl enable fail2ban

查看运行状态:


systemctl status fail2ban

如果输出中出现 active (running),通常说明服务启动成功。

3. 配置 Fail2ban

进入 /etc/fail2ban 目录,编辑 jail.local 文件,添加需要防止爆破的服务规则。

下面是一个常见的 SSH 配置示例:


[sshd]

enabled = true

filter = sshd

port = 22

maxretry = 5

findtime = 43200

bantime = 604800

action = %(action_mwl)s

logpath = /var/log/auth.log

参数说明:

  • enabled = true:启用该规则
  • filter = sshd:使用 sshd 过滤器
  • port = 22:监控 22 端口
  • maxretry = 5:在指定时间内最多允许失败 5 次
  • findtime = 43200:统计时间范围为 12 小时
  • bantime = 604800:封禁时间为 7 天
  • action = %(action_mwl)s:发送通知邮件并附带日志与 whois 信息
  • logpath = /var/log/auth.log:指定日志路径

保存后,重启 Fail2ban:


systemctl restart fail2ban

4. 常用命令

查看服务状态:


fail2ban-client status

查看 sshd 规则状态:


fail2ban-client status sshd

解封 IP:


fail2ban-client set sshd unbanip 5.5.5.5

更多命令可参考官方文档:

Commands - Fail2ban