Centos

在啟動之前在 CentOS 上設置 firewalld

  • February 25, 2021

如果我們在啟動firewalld服務之前使用firewall-cmd打開一個埠,它會失敗說“firewalld is not running”。

如果我啟動firewalld,我將與遠端伺服器斷開連接,我在與22不同的埠上執行SSH。

我應該如何配置遠端伺服器而不失去與它的連接?

firewall-offline-cmd 是 firewalld 守護程序的離線命令行客戶端。僅當 firewalld 服務未執行時才應使用它。例如從 system-config-firewall/lokkit 遷移或在安裝環境中使用 kickstart 配置防火牆設置。

幾個基本的例子:

# firewall-offline-cmd --direct --add-rule ipv4 filter INPUT 0 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
success
# firewall-offline-cmd --direct --add-rule ipv4 filter INPUT 0 -p udp -m state --state NEW -m udp --dport 69 -j ACCEPT
success
# firewall-offline-cmd --direct --add-rule ipv4 filter INPUT 0 -p tcp -m state --state NEW -m tcp --dport 8000 -j ACCEPT
success
# firewall-offline-cmd --direct --add-rule ipv4 filter INPUT 0 -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
success
# firewall-offline-cmd --direct --add-rule ipv4 filter INPUT 0 -p tcp -m state --state NEW -m tcp --dport 8443 -j ACCEPT
success

如果您的防火牆出於某種原因將您踢出,請告訴您的系統在 2 分鐘內重新啟動:

# shutdown -r +2 "Enabling firewall. If access is lost, server will restart in 5 minutes."

當你準備好時:

systemctl start firewalld

如果一切正常,取消關機:

# shutdown -c

最後,啟用服務並確保您的配置是永久的:

# systemctl enable firewalld
# firewall-cmd --runtime-to-permanent

此處的完整詳細資訊:https ://firewalld.org/documentation/man-pages/firewall-offline-cmd.html和此處:https://manpages.debian.org/unstable/firewalld/firewall-offline-cmd.1。 zh.html

引用自:https://unix.stackexchange.com/questions/409573