Fail2Ban常用配置项及其含义 的详细说明-网站建设服务中心-电脑网络-本牛千智丨专注WorkFine开发

Fail2Ban常用配置项及其含义 的详细说明

Fail2Ban 的配置文件(通常位于 /etc/fail2ban/jail.conf 或推荐使用的 /etc/fail2ban/jail.local)中包含多个关键参数,用于控制其行为。以下是 常用配置项及其含义 的详细说明:


📌 全局默认配置(在 [DEFAULT] 段中)

配置项默认值示例含义
ignoreip127.0.0.1/8 ::1忽略这些 IP 地址(永不封禁),可添加你的管理 IP,如 192.168.1.0/24 203.0.113.5
bantime600(秒)封禁时长(秒)。-1 表示永久封禁;支持 1h1d 等(Fail2Ban ≥ 0.9)
findtime600在此时间窗口内(秒),若失败次数达到 maxretry,则触发封禁
maxretry5findtime 内允许的最大失败次数
backendauto日志监控方式:autopyinotify(高效)、gaminpolling
usednswarn是否反向解析 IP:yes(慢)、no(快)、warn(默认,仅记录警告)
loglevelINFO日志级别:DEBUG, INFO, WARNING, ERROR, CRITICAL
logtarget/var/log/fail2ban.logFail2Ban 自身日志输出位置

🛡️ Jail(监牢)特定配置(如 [sshd], [nginx-http-auth]

每个 jail 可继承或覆盖 [DEFAULT] 中的设置。

配置项示例含义
enabledtrue / false是否启用该 jail
portssh22,80,443要封禁的端口(可写服务名或端口号)
filtersshd对应 /etc/fail2ban/filter.d/sshd.conf 中的规则名称
logpath/var/log/auth.log要监控的日志文件路径(可多行)
action%(action_)s触发封禁时执行的动作(如 iptables、firewalld、邮件通知等)
maxretry / bantime / findtime(同上)可针对特定服务单独设置

💡 action 常见值:

  • %(action_)s → 默认动作(通常是 iptables 封 IP)
  • %(action_mw)s → 封禁 + 发邮件给管理员
  • %(action_mwl)s → 封禁 + 邮件 + 附带日志片段

🔧 动作(Action)相关(在 action.d/ 目录中定义)

虽然不直接写在 jail.local 主体中,但可通过 action 引用:

action = %(action_mwl)s
         sendmail-whois[name=SSH, dest=admin@example.com, sender=fail2ban@example.com]

📁 配置文件结构简要说明

  • /etc/fail2ban/fail2ban.conf:主程序配置(日志、socket 等,一般无需改)
  • /etc/fail2ban/jail.conf:官方默认 jail 配置(不要直接修改
  • /etc/fail2ban/jail.local用户自定义配置文件(优先级更高,推荐使用)
  • /etc/fail2ban/filter.d/*.conf:日志匹配规则(正则表达式)
  • /etc/fail2ban/action.d/*.conf:封禁/通知动作脚本

✅ 最佳实践建议

  1. 始终使用 jail.local 覆盖配置sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
  2. 将你的 IP 加入 ignoreip,避免自己被锁。
  3. 合理设置 bantime:太短无效,太长影响误触用户。
  4. 测试 filter 规则sudo fail2ban-regex /var/log/auth.log /etc/fail2ban/filter.d/sshd.conf

📝 示例:一个典型的 SSH jail 配置

[sshd]
enabled  = true
port     = ssh
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 3
bantime  = 1h
findtime = 10m
ignoreip = 127.0.0.1/8 192.168.1.0/24 203.0.113.10
action   = %(action_mwl)s

上述表示:10 分钟内失败 3 次,封禁 1 小时,并邮件通知管理员。


通过理解这些常用配置项,你可以灵活、安全地定制 Fail2Ban 的防护策略。

请登录后发表评论

    请登录后查看回复内容