各服务策略
除了九个扫描器 jail,SSH、邮件、HTTP、重复违规和伪造 Googlebot 等服务还有六个 jail。它们主要按一定时间内的日志匹配次数判定,而不是所有请求都只匹配一次就永久封禁。
下表为 2026 年 11 月 1 日核实的设置,并不表示其他服务器应直接照搬。
| Jail | 检测窗口 | 命中次数 | freebsd 封禁时长 | oci 封禁时长 |
|---|---|---|---|---|
sshd | 1 周 | 3 | 10 周 | 10 周 |
postfix | 1 天 | 4 | 2 周 | 2 周 |
dovecot | 1 天 | 4 | 2 周 | 2 周 |
nginx | 60 秒 | 60 | 1 周 | 1 天 |
recidive | 2 周 | 5 | 52 周 | 52 周 |
fake-googlebot | 1 周 | 1 | 99,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 封禁。