教學課程 / Cloud One Workload Security:第 07 課-使用 Firewall 模組過濾流量 / 示範:建立 Firewall 規則
單元 1 / 6

示範:建立 Firewall 規則

7-Cloud One Workload Security Technical Essentials:使用 Firewall 模組過濾流量

Firewall 規則

Firewall 規則會檢查個別封包中的控制資訊,並依規則條件允許或封鎖傳入及傳出流量。趨勢科技提供一組適用於常見情境的預設規則;若預設規則無法滿足需求,也可以建立自訂規則。Firewall 規則會建立為 Common Objects,因此可視需要重複用於不同策略。

建立 Firewall 規則時,應指定下列屬性,以判斷規則要比對的流量:

  • Action
  • Priority
  • Packet Direction
  • Frame Type
  • Protocol
  • 封包來源與目的地
  • Specific Flags

規則動作

Firewall 規則支援五種動作:

動作 行為
Bypass 讓符合條件的流量略過 Firewall、狀態式檢查及 Intrusion Prevention 分析。傳入與傳出方向應分別建立規則,而且不會記錄事件。
Log Only 記錄符合條件的流量,但不會自行允許或封鎖流量。若封包之後遭 Deny 規則或排除該流量的 Allow 規則阻擋,事件會由實際阻擋封包的規則記錄,而不是由 Log Only 規則記錄。
Force Allow 強制允許原本可能遭其他規則封鎖的流量,但仍會接受 Intrusion Prevention 分析。啟用 ICMP 或 UDP 狀態式檢查時,也可使用適當的 Force Allow 規則允許未經請求的 ICMP 或 UDP 流量。
Deny 明確封鎖符合規則條件的流量,不會改變其他流量的預設處理方式。
Allow 明確允許符合規則條件的流量,並隱含拒絕同一方向中未符合任何 Allow 規則的其他流量。

Priority 與處理順序

Firewall 規則會從 Priority 4(最高)依序處理至 Priority 0(最低)。規則的指派或建立順序不影響處理結果;同一 Priority 會依下列動作順序處理:

  1. Bypass
  2. Log Only
  3. Force Allow
  4. Deny
  5. Allow

動作可使用的 Priority 如下:

動作 可用 Priority
Bypass 0–4
Log Only 僅限 4
Force Allow 0–4
Deny 0–4
Allow 僅限 0

例如,Priority 3 的傳入 Deny 規則會先於 Priority 2 的傳入 Force Allow 規則處理,因此符合兩條規則的封包會遭到封鎖。相反地,若 Force Allow 與 Deny 使用相同 Priority,則 Force Allow 會先處理。

Firewall 會分別判斷傳入與傳出方向。第一條傳入 Allow 規則只會使傳入方向轉為限制型;第一條傳出 Allow 規則也只會影響傳出方向。若某個方向沒有任何 Allow 規則,該方向的流量預設允許通過,除非符合 Deny 規則。ICMPv6 則是例外:除非有 Deny 規則明確封鎖,否則仍會允許通過。

如需完整的處理順序,請參閱 Firewall 規則動作與 Priority。

規則比對屬性

Packet Direction 用來指定規則要檢查傳入或傳出流量。由於規則只會套用至單一方向,雙向通訊通常需要成對建立規則。

Frame Type 中的「Frame」是指乙太網路訊框。Frame Type 用來選擇規則要比對的訊框類型,Protocol 則指定訊框所承載的通訊協定。也可以使用 Not 排除指定的訊框類型。Linux Agent 只檢查 IP 或 ARP 訊框;其他訊框類型會允許通過。

選取 IP 訊框後,可透過 Protocol 指定傳輸通訊協定。除了預先定義的常見通訊協定,也可以選取 Other,再輸入 0 至 255 的十進位通訊協定編號。

封包來源與目的地可依 IP 位址、MAC 位址或連接埠設定。ICMP、ICMPV6、TCP 及 TCP+UDP 支援 Specific Flags 比對;其中 TCP 旗標包括 URG、ACK、PSH、RST、SYN 及 FIN。

heartbeat 的隱藏規則

為確保 Workload Security 與 Agent 之間的通訊不受 Firewall 阻擋,Workload Security 會自動建立 Priority 4 的隱藏 Bypass 規則,允許傳入 Agent heartbeat 接聽連接埠的 TCP/IP 流量。這條規則預設接受來自任何 IP 位址及 MAC 位址的連線。

若要限制可連線至此連接埠的來源,可以建立新的 Priority 4 Force Allow 或 Bypass 規則,只允許來自指定 IP 位址、MAC 位址或兩者的流量。新規則必須符合下列條件,才會取代原有的隱藏規則:

  • Action:Force Allow 或 Bypass
  • Priority:4 - Highest
  • Packet Direction:Incoming
  • Frame Type:IP
  • Protocol:TCP
  • Packet Destination Port:Agent heartbeat 接聽連接埠,或包含該連接埠的清單

這條規則只控制 Firewall 是否允許流量通過;Agent 是否實際接聽 Workload Security 的連線,則取決於 Communication Direction。

Workload Security 預設採用由 Agent 發起的通訊方式(Agent-initiated communication)。在 Agent/Appliance Initiated 模式下,Agent 不會接聽 Workload Security 的連線,而是透過 TCP 443 主動連線至 Workload Security。heartbeat 的狀態與事件交換,以及待執行的組態與策略變更,都會在這條連線關閉前完成。

Bidirectional 模式允許 Workload Security 主動連線至 Agent;Manager Initiated 則由 Workload Security 發起所有通訊。採用這兩種模式時,才需要進一步限制前述 Agent heartbeat 接聽連接埠可接受的連線來源。詳細資訊請參閱 Workload Security 與 Agent 的通訊。

Workload Security 網路引擎

Workload Security 網路引擎供 Firewall、Intrusion Prevention 及 Web Reputation 使用,負責判斷是否允許或封鎖封包。對 Firewall 與 Intrusion Prevention 而言,網路引擎還會執行封包基本有效性檢查,並確認每個封包都通過兩個模組的規則檢查。

網路引擎具有兩種運作模式:

  • Tap Mode:Firewall 或 Intrusion Prevention 仍會檢查流量並產生事件,但不會捨棄封包或中斷連線。
  • Inline Mode:封包會直接通過網路引擎,相關規則會在流量送往通訊協定堆疊之前套用。

建議先使用 Tap Mode 觀察規則結果;由於此模式不會阻擋流量,不需要另外將規則改為 Log Only。確認結果符合預期後,再切換至 Inline Mode。若必須直接在 Inline Mode 測試,應先將規則設為 Log Only,避免必要流量遭到阻擋,導致電腦無法連線。請參閱設定 Workload Security Firewall。

示範:建立 Firewall 規則

以下影片示範如何建立 Firewall 規則,並設定動作、Priority、方向、訊框類型、通訊協定、旗標及事件記錄選項。

下一單元:建立 Firewall 規則 →

Cloud One Workload Security:第 07 課-使用 Firewall 模組過濾流量 · 6 單元