實例
firewall-cmd --permanent --zone public --add-port 80/tcp
firewall-cmd --remove-port=8080/tcp --zone=public --permanent
firewall-cmd --reload
命令1
firewall-cmd --permanent --zone public --add-port 80/tcp
是用來在 FirewallD 防火牆中開放一個特定連接埠的指令。以下是這個指令的詳細解釋:
- firewall-cmd:這是使用 FirewallD 進行防火牆配置的指令。
- --permanent:這個選項表示對防火牆的變更是永久性的,即使系統重新啟動,這些變更也會保留。如果不使用這個選項,則變更只會臨時生效,重啟後會失效。
- --zone public:這個選項指定了防火牆區域(zone),在這裡是 public。區域是防火牆的一種配置方式,可以為不同的網路區域設置不同的規則。 public 是一個預設的區域,通常用來連接公開網路。
- --add-port 80/tcp:這個選項表示要開放的連接埠及其協定。這裡是 80/tcp,即開放 TCP 協定的 80 號連接埠。這通常是 HTTP 網頁服務器所使用的連接埠。
綜合起來,這個指令的意思是:在 public 區域中永久開放 TCP 協議的 80 號端口,允許 HTTP 流量通過。
命令2
firewall-cmd --remove-port=8080/tcp --zone=public --permanent
是一條用來在 FirewallD 防火牆中移除一個特定連接埠的指令。以下是這個指令的詳細解釋:
- firewall-cmd:這是使用 FirewallD 進行防火牆配置的指令。
- --remove-port=8080/tcp:這個選項表示要移除的連接埠及其協定。這裡是 8080/tcp,也就是移除 TCP 協定的 8080 號連接埠。
- --zone=public:這個選項指定了防火牆區域(zone),在這裡是 public。區域是防火牆的一種配置方式,可以為不同的網路區域設置不同的規則。 public 是一個預設的區域,通常用來連接公開網路。
- --permanent:這個選項表示對防火牆的變更是永久性的,即使系統重新啟動,這些變更也會保留。如果不使用這個選項,則變更只會臨時生效,重啟後會失效。
綜合起來,這個指令的意思是:在 public 區域中永久移除 TCP 協議的 8080 號端口,使得該端口不再對外開放。
命令3
firewall-cmd --reload
是用來重新載入 FirewallD 防火牆配置的指令。以下是這個指令的詳細解釋:
- firewall-cmd:這是使用 FirewallD 進行防火牆配置的指令。
- --reload:這個選項表示重新載入目前的防火牆配置。
當您進行了永久性的變更(例如使用 --permanent 選項新增或移除連接埠、服務等),這些變更需要重新載入防火牆配置後才會生效。 firewall-cmd --reload 就是用來套用這些變更的指令。
基本介紹
在 Red Hat Enterprise Linux 9.2 中,預設的防火牆設定是使用 firewalld 管理的。預設情況下,firewalld 會阻止所有未明確允許的入站網路連線。這意味著大多數端口在預設情況下是關閉的,從而確保一個安全的基線配置。
防火牆使用「區域」(zones)的概念,根據網路介面的信任等級應用不同的規則。
關於ZONE
--zone= 參數後面可以跟隨多個不同的區域名稱,而不僅僅是 public。 firewalld 提供了多個預先定義的區域,每個區域都有不同的預設規則和信任等級。以下是一些常見的區域名稱及其用途:
block:拒絕所有入站連接,並傳回 icmp-host-prohibited 訊息(適用於 IPv4)或 icmp6-adm-prohibited 訊息(適用於 IPv6)。只接受系統內部發起的連線。
firewall-cmd --zone=block --add-port=22/tcp
dmz:適用於非信任區域,允許有限的入站流量。
firewall-cmd --zone=dmz --add-service=http
drop:丟棄所有入站流量,不回傳任何訊息。這是最嚴格的區域,只允許出站流量。
firewall-cmd --zone=drop --add-port=80/tcp
external:用於外部網絡,通常與 NAT 一起使用,保護內部網路免受外部威脅。
firewall-cmd --zone=external --add-masquerade
home:適用於家庭網絡,信任網路中的其他設備,允許更多的入站流量。
firewall-cmd --zone=home --add-service=samba
internal:用於內部網絡,信任網路中的其他計算機,允許更多的入站流量。
firewall-cmd --zone=internal --add-service=ssh
public:用於公共網絡,不信任網路中的其他計算機,允許有限的入站流量。
firewall-cmd --zone=public --add-service=dhcpv6-client
trusted:信任所有網路連接,允許所有入站和出站流量。
firewall-cmd --zone=trusted --add-service=ftp
work:適用於工作網絡,信任網路中的其他設備,允許更多的入站流量。
firewall-cmd --zone=work --add-service=ipp
這些區域名稱可以根據不同的網路環境和安全性需求來選擇和設定(Red Hat Docs) (Red Hat Docs) (Red Hat Customer Portal) (Red Hat Customer Portal)。