Fail2Ban Jails 管理

高級使用者可能還會對配置 Fail2Ban jails 用於阻止 IP 位址的方式感興趣。一個 Fail2Ban jail 是一個篩檢程式和一項或多項操作的組合。篩檢程式會定義匹配與失敗登入嘗試和其它惡意操作相對應的模式的常規表達方式。這些操作則定義當篩檢程式捕捉到不規範使用 IP 位址時需要執行的命令。

jail 可以是活動或不活動狀態。當正在運行 Fail2Ban 服務時,只有活動的 jails 將用於監控日誌檔以及禁止可疑的 IP 地址。

在 Plesk 中,有針對所有主機服務(web 伺服器、郵件伺服器、FTP 伺服器)的預先配置的 jails。大部分以相同方式運行:它們會檢測失敗的登入嘗試並阻止存取服務10分鐘。這些 jails 位於 Jails 標籤(在 工具與設定  > IP 地址禁止 (Fail2Ban) 下)。

Fail2Ban_Jails

下面是可用的預配置 jails選項:

  • plesk-apache 查找 Apache 驗證失敗的嘗試操作並禁止攻擊者 10 分鐘。
  • plesk-apache-badbot 在 Apache 存取日誌檔中查找郵件捕獲者和漏洞掃描器。禁止會持續兩天。
  • plesk-dovecot 查找 Dovecot IMAP、POP3 和 Sieve 驗證失敗的嘗試操作,並禁止攻擊者 10 分鐘。
  • plesk-hordeplesk-roundcube 檢測 web 郵箱失敗的登入嘗試,並阻止存取 web 服務 10 分鐘。
  • plesk-modsecurity 會禁止由 ModSecurity Web 應用程式防火牆檢測為有害的 IP 地址。該 jail 只有在 ModSecurity 已經運行的情況下才能被啟動,即使 ModSecurity 正在 "僅檢測" 模式中運行也將會禁止攻擊者的存取。該禁止會持續 10 分鐘。
  • plesk-panel 檢測 Plesk 登入失敗的嘗試操作,並禁止攻擊者 10 分鐘。
  • plesk-postfix 查找Postfix SMTP 和 SASL 驗證失敗的嘗試操作,並禁止攻擊者 10 分鐘。
  • plesk-proftpd 查找 ProFTPD 登入失敗的嘗試操作並禁止攻擊者 10 分鐘。
  • plesk-wordpress 查找 WordPress 驗證失敗的嘗試操作並禁止攻擊者 10 分鐘。
  • recidive 在 Fail2Ban 日誌中查找其它的 jails 禁止。它會阻止五次接收到來自其它 jails 長達 10 分鐘禁止命令的主機。該禁止會持續一周,且適用於伺服器上的所有服務。
  • ssh 查找 SSH 登入失敗的嘗試操作並禁止攻擊者 10 分鐘。

對未安裝的 Plesk 元件預先配置的 jails 不會在清單中顯示。例如,如果 RoundCube web 郵箱未安裝, plesk-roundcube jail 則不會在可用的 jails 清單中顯示。

若要保護您的服務不被指定威脅侵入,以及保護非 Plesk 附帶的協力廠商服務,您可以設定自己的 jails,這將可以關閉和打開、更新 jail 設定,並添加可被 jails 使用的篩檢程式。

啟動或停用 Jail

若要啟動 jail,請如下操作:

  1. 請進入  工具與設定 > IP 地址禁止 (Fail2Ban) > Jails
  2. 選定一個 jail 並點按 啟用 按鈕。只有正在運行 Fail2Ban 服務時,才能使用該按鈕(啟用入侵偵測 核取方塊已在 設定 標籤上選定)。

注意:如果您嘗試使用群組 啟用 操作一次啟用多個 jails,如果其中的一個 jails 啟動失敗,則所有的 jails 都無法啟用。那麼,請一個一個地分別啟用。

若要停用 jail,請如下操作:

  1. 請進入  工具與設定 > IP 地址禁止 (Fail2Ban) > Jails
  2. 選定一個 jail 並點按 關閉 按鈕。

    Fail2Ban_activate_jail

配置 Jail 的設定

要設定心的 jail,請執行下列步驟:

  1. 請進入  工具與設定 > IP 地址禁止 (Fail2Ban) > Jails > 添加 Jail
  2. 指定篩檢程式。

    您可以使用已在 Plesk 中設定的以下篩檢程式:

    • apache-auth 用於 Apache 驗證失敗
    • apache-badbots 用於垃圾郵件機器人和網路爬蟲
    • plesk-courierlogin 用於 Courier IMAP 和 POP3 驗證失敗。
    • plesk-dovecot 用於 Dovecot IMAP、POP3 和 Sieve 驗證失敗
    • plesk-horde 用於 Horde web 郵箱驗證失敗
    • plesk-modsecurity 用於通過 ModSecurity Web 應用防火牆檢測出來的對 web 應用的攻擊。
    • plesk-panel 用於 Plesk 驗證失敗
    • plesk-qmail 用於 QMail SMTP 驗證失敗
    • plesk-roundcube 用於 Roundcube web 郵箱驗證失敗
    • plesk-wordpress 用於 WordPress 驗證失敗
    • postfix-sasl 用於 Postfix SMTP 和 SASL 驗證失敗
    • proftpd 用於 ProFTPD 登入失敗
    • recidive 用於被 Fail2Ban 重複禁止的主機
    • sshd 用於 SSH 登入失敗

    您還可以添加您自己的篩檢程式。詳情請查看下面的 管理篩檢程式 部分。

  3. 指定 jail 操作。

    您可以使用已在 Plesk 中設定的以下操作:

    • iptables 用於在單個埠上禁止攻擊者
    • iptables-allports 用於在所有埠上禁止攻擊者
    • iptables-multiport 用於在多個埠上禁止攻擊者
    • sendmail 用於向指定的電郵地址發送郵件通知

    操作 功能表選擇一個操作,並點按 添加 以將其添加到 jail。您可以添加任意數量的操作到一個 jail。可以根據您的要求定制化操作,例如,您可以指定一個電郵地址來發送通知或指定應關閉的埠。

  4. 日誌路徑 欄位中,指定 Fail2ban 將要在裡面查找攻擊跡象的一個或多個日誌檔。
  5. 設定 IP 地址禁止時段(以秒為單位)。
  6. 設定登入嘗試失敗的次數。
  7. 點按 確定

    Fail2Ban_AddJail

要更改現有 jail 設定,請執行下列步驟:

  1. 進入 工具與 > IP 地址禁止 (Fail2Ban) > Jails ,點按 jail 的名稱,然後點按 更改設定
  2. 編輯 jail 的設定並點按 確定

若要移除 jail,請如下操作:

  1. 請進入  工具與設定 > IP 地址禁止 (Fail2Ban) > Jails
  2. 選定一個 jail 並點按 移除

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

管理篩檢程式

若要添加可以被 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