防止暴力攻击 (Fail2Ban)

IP 地址禁止(Fail2Ban) 是自动保护您的服务器防止暴力攻击的方式。Fail2Ban 会使用常规的表达方式来监控日志文件查找与验证失败和可疑错误的模式。

如果一个 IP 地址在管理员定义的一个时间间隔内进行了很多次的登录尝试,该 IP 地址会被禁止一段时间。Fail2Ban 还可以更新防火墙规则并发送邮件通知。当禁止时间结束,该 IP 地址会被自动解禁。

注意: 若要使用 Fail2Ban,从 Plesk 11.5 升级的管理员必须从 obtain 或其供应商获取 Plesk 12 的许可证密钥。

设置 Plesk 自动禁止对您的服务器会生成恶意流量的 IP 地址和网络:

  1. 进入  工具与设置 > IP 地址禁止 (Fail2Ban) (在  安全性  组里)。必须在您的服务器上安装 Fail2Ban 组件。
  2. 请选择 启用侵入检测 复选框。
  3. 指定下列设置:
    • IP 地址禁止时段 – IP 地址被禁的时间间隔(秒)。当禁止时间结束,该 IP 地址会被自动解禁。
    • 检测后续攻击的时间间隔 - 系统计算未成功登录尝试和来自某个 IP 地址不规范行为的次数的时间间隔(秒)。
    • IP 地址被禁前的失败次数 – 某个 IP 地址尝试登录失败的次数。
  4. 点击 确定

现在所有活动的 Fail2Ban jails 都将用于监控日志文件并禁止可疑的 IP 地址。

IP_Address_Banning

Plesk 中的 Fail2Ban 有以下限制和特殊性:

  • 不得以 Plesk 服务的形式手动重启 Fail2Ban,因为所有累积的统计数据将会丢失,包括当前被禁的 IP 地址。
  • Fail2Ban 不会对使用 IPv6 地址的攻击者提供防护。Plesk 中的 Fail2ban 只依赖于 IP(没有主机名查询),除非重新配置。
  • Fail2Ban 无法防御分布式暴力破解攻击,因为它会通过其 IP 地址识别入侵者。
  • 如果您的 Plesk 安装于 VPS 上,该 VPS 的 iptables 记录限制 (numiptent) 可能会影响 Fail2Ban 的运行。 当超过了该限制时,Fail2Ban 将会停止正常运行,而在 Fail2Ban 日志中您将会找到以下行:
    fail2ban.actions.action: ERROR iptables -I fail2ban-plesk-proftpd 1 -s 12.34.56.78 -j REJECT --reject-with icmp-port-unreachable returned 100
    如果是此情况,请联系您的 VPS 主机提供商来解决该问题。
  • 如果在升级到 Plesk 12 前于服务器上安装了 Fail2Ban,程序包将会由 Plesk 的 Fail2Ban 程序包替代。如果您已安装的程序包比 Plesk 提供的更新,升级将会失败。现有的 jails 将不会被覆写,而您可以在 Plesk 与 Plesk 12 jails 中对其进行管理。

如果不想阻止某些 IP 地址:

  1. 请进入  工具与设置  > IP 地址禁止 (Fail2Ban) > 信任的 IP 地址 > 添加信任的 IP 进行操作。
  2. IP 地址 字段中提供一个 IP 地址、一个 IP 范围、或一个 DNS 主机名,然后点击 确定

您可以进入  工具与设置 > IP 地址禁止 (Fail2Ban) > 日志  中查看和下载 Fail2Ban 日志文件。

您可进入  工具与设置 > IP 地址禁止 (Fail2Ban) > 被禁的 IP 地址  中查看被禁的 IP 地址列表,解禁,或移动都信任的地址列表中。

您可以进入 工具与设置 > IP 地址禁止 (Fail2Ban) > 信任的 IP 地址  中查看永远不会被禁止的 IP 地址列表,以及添加 IP 地址或移除 IP 地址。

在本节:

Fail2Ban Jails 管理