跳至内容

各服务策略

除了九个扫描器 jail,SSH、邮件、HTTP、重复违规和伪造 Googlebot 等服务还有六个 jail。它们主要按一定时间内的日志匹配次数判定,而不是所有请求都只匹配一次就永久封禁。

下表为 2026 年 11 月 1 日核实的设置,并不表示其他服务器应直接照搬。

Jail检测窗口命中次数freebsd 封禁时长oci 封禁时长
sshd1 周310 周10 周
postfix1 天42 周2 周
dovecot1 天42 周2 周
nginx60 秒601 周1 天
recidive2 周552 周52 周
fake-googlebot1 周199,999 周99,999 周

SSH 与邮件

sshd 评估 SSH 认证失败及类似事件,postfix 与 dovecot 则分别评估相关邮件服务日志,各自使用独立的过滤规则。这些是日志行的命中次数,并不代表发送的消息总数或连接总数。

HTTP

nginx 尤其容易混淆:两台服务器使用相同的 jail 名称,但实际过滤规则不同。

  • freebsd:对返回 200、4xx 或 5xx 的 GET、POST 和 HEAD 响应,在 60 秒内命中 60 次。
  • oci:对使用大写方法的请求返回 429、444、499、503 和 504 的响应,在 60 秒内命中 60 次。

因此相同的 jail 名称并不意味着相同的检测逻辑。阅读 API 结果时请结合 source 与 jail 判断。

重复违规者

recidive 基于 Fail2ban 记录的封禁来评估重复违规。同一 IP 可能与其他按服务划分的 jail 重叠。重复记录会保留在 API 的观测列表中,但在文本订阅源中会按 IP 合并。

伪造的 Googlebot

fake-googlebot 对声称是 Googlebot 的请求使用现有的 DNS 校验。

  • freebsd:解析名称并验证正向解析结果与原始 IP 一致。
  • oci:验证解析得到的名称以 googlebot.com 或 google.com 结尾。

oci 只检查反向解析名称,并未进一步验证正向解析是否返回原始 IP,所以两种校验的严格程度不同。封禁时长沿用现有的极长但有限的值,而非扫描器缓解中使用的永久 bantime = -1 封禁。