firewalld 是用於 Linux 作業系統的防火牆管理工具。本小節闡述如何使用該工具打開 Plesk 正常運行所需的各個埠。

要想使 Plesk 和其服務正常工作,必須在伺服器上打開一系列埠。在某些作業系統上,會預設關閉這些埠。當您安裝 Plesk 時,如果在伺服器上安裝了 firewalld,Plesk 會自動打開 Plesk 正常運行所需的各個埠。即使在安裝 Plesk 的過程中關閉了 firewalld 也會如此。

支援在下面各作業系統上使用 firewalld:

  • CentOS 7、RHEL 7、CloudLInux 7
  • Ubuntu 18.04 和更新版本

在 CentOS 和 RHEL 7 以及更新版本上,會默認安裝和運行 firewalld。在 Ubuntu 16.04 和更新版本上,您需要在安裝 Plesk 後手動打開 firewalld。

已知問題和局限性

  • Plesk 只能配置 firewalld 0.4 或更新版本。
  • Plesk 只能在安裝 Plesk 過程中配置 firewalld。當您升級 Plesk 時,不會更改 firewalld 配置。

您可以在下面表格中看到 Plesk 通過 firewalld 打開的一系列埠和相關協議。

服務名稱 服務所用埠
通過 HTTPS 的 Plesk 的管理介面 TCP 8443
通過 HTTP 的 Plesk 的管理介面 TCP 8880
Web 伺服器 TCP 80、TCP 443
FTP 伺服器 TCP 21
SSH(安全 shell)伺服器 TCP 22
SMTP (郵件發送) 伺服器 TCP 25、TCP 465、TCP 587
POP3 (郵件檢索) 伺服器 TCP 110、TCP 995
IMAP (郵件檢索) 伺服器 TCP 143、TCP 993
域名伺服器 UDP 53、TCP 53
Plesk 升級和更新 TCP 8447

Plesk 會將上述配置應用到名為 “plesk” 的 firewalld 區域,並設定該區域為預設區域。在安裝 Plesk 之前添加的 運行時 firewalld 規則 會丟失。 永久規則 不受影響。您可以在任何時候將其回滾。

回滾 Firewalld 初始配置

如果您在安裝 Plesk 之前配置了 永久 firewalld 規則 (將規則添加到 firewalld 區域),則可以回滾這些規則。具體操作方式是設定包含這些規則的 firewalld 區域為預設區域。

若要回滾 Firewalld 初始配置,請如下操作:

  1. 在 Plesk CLI 中,執行下面的命令:

    firewall-cmd --set-default-zone=zonename
    

    其中“區域名稱”是指包含要回滾的規則的區域的名稱。

  2. (備選)如果您不再使用了,可刪除 “plesk” firewalld 區域:

    firewall-cmd --delete-zone=plesk –permanent
    

    備註: 上述命令會刪除 “plesk” 區域。此操作不可恢復。若要操作 Plesk,您需要手動配置所需埠。

阻止 Plesk 配置 Firewalld

在 Plesk 安裝過程中,您可以令 Plesk 不配置 firewalld。這樣會保留當前配置的 firewalld 運行時規則 。但是,在此情況下,必須手動在 firewalld 中打開Plesk 正常運行所需的埠。

另外,您可以關閉 firewalld 而使用 Plesk 防火牆擴展。該擴展會預配置打開 Plesk 正常運行所需的所有埠。

若要瞭解如何阻止 Plesk 配置 firewalld,可參閱 Plesk for Linux 安裝指南:

與 Plesk Firewall 擴展

firewalld 和 Plesk Firewall 擴展都是管理 iptables 防護牆的工具。同時使用這兩款工具可能會導致衝突以及關閉 Plesk 正常運行所需埠。我們建議一次只使用一種工具。

與 Fail2Ban 和 Docker 的相容性

當 Plesk 配置 firewalld 時,firewall 規則不會影響 Fail2Ban 和 Docker 的運行。如果出現問題,我們建議重啟 Fail2ban 和 Docker 服務。如果該方案沒有幫助,請聯繫 Plesk 支援。