Fail2Ban Jails 管理

高级用户可能还会对配置 Fail2Ban jails 用于阻止 IP 地址的方式感兴趣。一个 Fail2Ban jail 是一个过滤器和一项或多项操作的组合。过滤器会定义匹配与失败登录尝试和其它恶意操作相对应的模式的常规表达方式。这些操作则定义当过滤器捕捉到不规范使用 IP 地址时需要执行的命令。

在 Plesk 中,有针对所有主机服务(web 服务器、邮件服务器、FTP 服务器)的预先配置的 jails。大部分以相同方式运行:它们会检测失败的登录尝试并阻止访问服务10分钟。这些 jails 需要特殊的解释。

  • plesk-apache-badbot 在 Apache 访问日志文件中查找邮件捕获者和漏洞扫描器。禁止会持续两天。
  • plesk-hordeplesk-roundcube 检测 web 邮箱失败的登录尝试,并阻止访问 web 服务 10 分钟。
  • recidive 在 Fail2Ban 日志中查找其它的 jails 禁止。它会阻止五次接收到来自其它 jails 长达 10 分钟禁止命令的主机。该禁止会持续一周,且适用于服务器上的所有服务。
  • plesk-modsecurity 会禁止由 ModSecurity Web 应用程序防火墙检测为有害的 IP 地址。该 jail 只有在 ModSecurity 已经运行的情况下才能被激活,即使 ModSecurity 正在 "仅检测" 模式中运行也将会禁止攻击者的访问。该禁止会持续 10 分钟。

对未安装的 Plesk 组件预先配置的 jails 不会在列表中显示。例如,如果 RoundCube web 邮箱未安装, plesk-roundcube jail 则不会在可用的 jails 列表中显示。

若要保护您的服务不被指定威胁侵入,以及保护非 Plesk 附带的第三方服务,您可以设置自己的 jails,这将可以关闭和打开、更新 jail 设置,并添加可被 jails 使用的过滤器。

注意: Plesk 附带的 Jails 不能被移除,您只能停用。但是您可以移除自己添加的 jails。

只有已安装的 Plesk 组件的 jails 才会在 Plesk 中显示。例如,如果未安装 qmail 邮件服务器,则会隐藏 qmail jail。

如果您尝试使用群组 启用 操作一次启用多个 jails,如果其中的一个 jails 启动失败,则所有的 jails 都无法启用。那么,请一个一个地分别启用。

要设置心的 jail,请执行下列步骤:

  1. 请进入  工具与设置 > IP 地址禁止 (Fail2Ban) > Jails > 添加 Jail
  2. 指定 jail 设置。

    您可以使用已在 Plesk 中设置的以下过滤器:

    • apache-auth 用于 Apache 验证失败
    • apache-badbots 用于垃圾邮件机器人和网络爬虫
    • courierlogin 用于 Courier IMAP 和 POP3 验证失败
    • dovecot 用于 Dovecot IMAP、POP3 和 Sieve 验证失败
    • plesk-horde 用于 Horde web 邮箱验证失败
    • plesk-panel 用于 Plesk 验证失败
    • plesk-qmail 用于 QMail SMTP 验证失败
    • plesk-roundcube 用于 Roundcube web 邮箱验证失败
    • postfix-sasl 用于 Postfix SMTP 和 SASL 验证失败
    • proftpd 用于 ProFTPD 登录失败
    • recidive 用于被 Fail2Ban 重复禁止的主机
    • sshd 用于 SSH 登录失败

    您可以使用已在 Plesk 中设置的以下操作:

    • iptables 用于通过 iptables 防火墙在单个端口上禁止 IP 地址。
    • iptables-allports 用于通过 iptables 防火墙在所有端口上禁止 IP 地址。
    • iptables-multiport 用于通过 iptables 防火墙在多个端口上禁止 IP 地址。
    • sendmail 用于通过 sendmail 发送邮件通知

若要添加可以被 jail 使用的过滤器:

  1. 请进入  工具与设置 > IP 地址禁止 (Fail2Ban) > Jails > 管理过滤器 > 添加过滤器
  2. 指定用于匹配日志文件行的过滤器名称和常规表达。有关 Fail2Ban 过滤器的详情,请参阅 Fail2Ban 文档 http://www.fail2ban.org/wiki/index.php/MANUAL_0_8#Filters。因为 Fail2Ban 是 Python 应用程序,因而有关 Python 常规表达的详情可参阅 Python 文档 https://docs.python.org/2/library/re.html