使用階層式防火牆政策和規則

本頁假設您熟悉「階層式防火牆政策總覽」中說明的概念。如需階層式防火牆政策的實作範例,請參閱「階層式防火牆政策範例」。

限制

  • 階層式防火牆政策規則不支援使用網路標記定義目標。您必須改用目標虛擬私有雲 (VPC) 網路或目標服務帳戶。
  • 防火牆政策可套用至資料夾和機構層級,但無法套用至 VPC 網路層級。虛擬私有雲網路支援一般虛擬私有雲防火牆規則。
  • 一個資源 (資料夾或機構) 只能與一項防火牆政策建立關聯,不過資料夾中的虛擬機器 (VM) 執行個體可以沿用 VM 以上整個資源階層的規則。
  • 防火牆規則記錄功能支援 allowdeny 規則,但不支援 goto_next 規則。
  • 防火牆規則不支援 IPv6 Hop-by-Hop 通訊協定。

防火牆政策工作

本節說明如何建立及管理階層式防火牆政策。

如要查看本節所列工作產生的作業進度,請確認 IAM 主體除了各項工作所需的權限或角色外,具備下列權限或角色。

建立防火牆政策

建立階層式防火牆政策時,您可以將其父項設為機構或機構內的資料夾。建立政策後,您可以將政策與機構或機構中的資料夾建立關聯

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或機構內的資料夾。

  3. 按一下「建立防火牆政策」

  4. 在「Policy name」(政策名稱) 欄位中,輸入政策名稱。

  5. 選用:如要為政策建立規則,請按一下「繼續」

  6. 在「新增規則」部分,按一下「建立防火牆規則」

    詳情請參閱「建立規則」。

  7. 選用:如要將政策與資源建立關聯,請按一下「繼續」

  8. 在「將政策與資源建立關聯」部分中,按一下「新增」

    詳情請參閱「將政策與機構或資料夾建立關聯」。

  9. 點選「建立」

gcloud

執行下列指令,建立以機構為上層的階層式防火牆政策:

gcloud compute firewall-policies create \
    --organization ORG_ID \
    --short-name SHORT_NAME

執行下列指令,建立父項為機構內資料夾的階層式防火牆政策:

gcloud compute firewall-policies create \
    --folder FOLDER_ID \
    --short-name SHORT_NAME

更改下列內容:

  • ORG_ID:貴機構的 ID

    指定機構 ID,建立以機構為父項的政策。這項政策可以與機構或機構內的資料夾建立關聯。

  • SHORT_NAME:政策名稱

    使用 Google Cloud CLI 建立的政策有兩個名稱:系統產生的名稱和您提供的簡短名稱。使用 gcloud CLI 更新現有政策時,您可以提供系統產生的名稱,也可以提供簡短名稱和機構 ID。使用 API 更新政策時,必須提供系統產生的名稱。

  • FOLDER_ID:資料夾的 ID

    指定資料夾 ID,建立以資料夾為父項的政策。 政策可與包含資料夾的機構或該機構內的任何資料夾建立關聯。

將政策與機構或資料夾建立關聯

將階層式防火牆政策與機構或機構中的資料夾建立關聯後,防火牆政策的規則 (已停用的規則除外,且須符合各項規則的目標) 會套用至相關聯機構或資料夾專案中虛擬私有雲網路的資源。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或含有政策的資料夾。

  3. 按一下政策。

  4. 按一下「關聯項目」分頁標籤。

  5. 按一下「新增關聯」

  6. 選取機構根層級,或選取機構內的資料夾。

  7. 按一下「新增」。

gcloud

根據預設,如果您嘗試將關聯插入已有關聯的機構或資料夾,方法就會失敗。如果您指定 --replace-association-on-target 標記,系統會在建立新關聯的同時刪除現有關聯。這樣可避免資源在轉換期間沒有政策。

gcloud compute firewall-policies associations create \
    --firewall-policy POLICY_NAME \
    --organization ORG_ID \
    [ --folder FOLDER_ID ] \
    [ --name ASSOCIATION_NAME ] \
    [ --replace-association-on-target ]

更改下列內容:

  • POLICY_NAME:政策的簡稱或系統產生的名稱
  • ORG_ID:貴機構的 ID
  • FOLDER_ID:如果您要將政策與資料夾建立關聯,請在此指定資料夾;如果要將政策與機構層級建立關聯,請省略此步驟
  • ASSOCIATION_NAME:關聯的選用名稱;如未指定,名稱會設為「機構 ORG_ID」或「資料夾 FOLDER_ID

將政策從一個資源移至另一個資源

移動政策只會變更政策的父項,變更政策的父項可能會影響哪些 IAM 主體可以在政策中建立及更新規則,以及哪些 IAM 主體可以建立未來的關聯。

移動政策不會變更任何現有的政策關聯,也不會影響政策中規則的評估結果。

控制台

請使用 Google Cloud CLI 執行此程序。

gcloud

執行下列指令,將階層式防火牆政策移至機構:

gcloud compute firewall-policies move POLICY_NAME \
    --organization ORG_ID

執行下列指令,將階層式防火牆政策移至機構中的資料夾:

gcloud compute firewall-policies move POLICY_NAME \
    --folder FOLDER_ID

更改下列內容:

  • POLICY_NAME:要移動的政策簡稱或系統產生的名稱
  • ORG_ID:政策要移往的機構 ID
  • FOLDER_ID:政策要移往的資料夾 ID

更新政策說明

唯一可更新的政策欄位是「說明」欄位。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下政策。

  4. 按一下 [編輯]

  5. 修改說明。

  6. 按一下 [儲存]

gcloud

gcloud compute firewall-policies update POLICY_NAME \
    --description DESCRIPTION \
    --organization ORG_ID

列出政策

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

    如果是機構,系統會在「與這個機構相關聯的防火牆政策」部分顯示相關聯的政策。「位於這個機構的防火牆政策」部分會列出機構擁有的政策。

    如果是資料夾,則「與這個資料夾相關聯或由這個資料夾沿用的防火牆政策」部分會顯示與資料夾相關聯或由資料夾沿用的政策。「位於這個資料夾的防火牆政策」部分會列出資料夾擁有的政策。

gcloud

gcloud compute firewall-policies list \
    [--organization ORG_ID | --folder FOLDER_ID]

描述政策

您可以查看階層式防火牆政策的詳細資料,包括政策規則和相關聯的規則屬性。所有這些規則屬性都會計入規則屬性配額。詳情請參閱「每個防火牆政策」表格中的「每個階層式防火牆政策的規則屬性」。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下政策。

gcloud

gcloud compute firewall-policies describe POLICY_NAME \
    --organization ORG_ID

刪除政策

如要刪除階層式防火牆政策,請先刪除所有關聯

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下要刪除的政策。

  4. 按一下「關聯項目」分頁標籤。

  5. 選取所有關聯。

  6. 按一下「移除關聯」

  7. 移除所有關聯後,按一下「刪除」

gcloud

使用下列指令刪除政策:

gcloud compute firewall-policies delete POLICY_NAME \
    --organization ORG_ID

列出資源的關聯

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 系統會顯示所選資源 (機構或資料夾) 的相關聯和繼承政策清單。

gcloud

gcloud compute firewall-policies associations list \
    [--organization ORG_ID | --folder FOLDER_ID]

刪除關聯

如要變更與機構或資料夾相關聯的階層式防火牆政策,建議您改為建立新政策並建立關聯,而非刪除現有的關聯政策。您可以在一個步驟中建立新政策的關聯,確保階層式防火牆政策一律會與機構或資料夾建立關聯。

如要刪除階層式防火牆政策與機構或資料夾之間的關聯,請按照本節所述步驟操作。刪除關聯後,階層式防火牆政策中的規則不會套用至新連線。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下政策。

  4. 按一下「關聯項目」分頁標籤。

  5. 選取要刪除的關聯。

  6. 按一下「移除關聯」

gcloud

gcloud compute firewall-policies associations delete ASSOCIATION_NAME \
    --firewall-policy POLICY_NAME \
    --organization ORG_ID

防火牆政策規則工作

本節說明如何建立及管理階層式防火牆政策規則。

建立規則

階層式防火牆政策規則必須在階層式防火牆政策中建立。您必須將包含規則的政策與資源建立關聯,規則才會生效。

每項階層式防火牆政策規則可包含 IPv4 或 IPv6 範圍,但不能同時包含兩者。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或含有政策的資料夾。

  3. 按一下政策名稱。

  4. 按一下「Create firewall rule」(建立防火牆規則)

  5. 填寫規則欄位:

    1. 優先順序:規則的數值評估順序。系統會依優先順序由高至低評估規則,其中 0 為最高優先順序。每項規則的優先順序不得重複。建議您將規則優先順序值分開,不要只差一 (例如 100200300),這樣之後就能在現有規則之間建立新規則。
    2. 將「記錄」收集功能設為「開啟」或「關閉」
    3. 針對「Direction of traffic」(流量方向),指定這項規則是「Ingress」(輸入) 或「Egress」(輸出) 規則。
    4. 在「相符時執行的動作」中,選擇下列其中一個選項:
      1. 允許:允許符合規則的連線。
      2. 拒絕:拒絕符合規則的連線。
      3. Go to next:將連線評估結果傳遞至階層中下一個較低的防火牆規則。
      4. 套用安全性設定檔群組:將封包傳送至設定的防火牆端點,進行第 7 層檢查。
        • 在「安全性設定檔群組」清單中,選取安全性設定檔群組的名稱。
        • 如要啟用封包的 TLS 檢查功能,請選取「啟用 TLS 檢查」。 如要進一步瞭解如何評估 VM 各個網路介面的規則和對應動作,請參閱「政策和規則評估順序」。
    5. 選用:如要將規則限制在特定網路上,請在「目標網路」欄位中指定這些網路。按一下「新增網路」,然後選取「專案」和「網路」。您可以在規則中新增多個目標網路。
    6. 選用:您可以在「目標服務帳戶」欄位中指定帳戶,將規則限制為僅適用於可存取特定服務帳戶的 VM
    7. 選用:您可以選取「安全標記」,在政策中指定輸入規則的來源,以及輸入或輸出規則的目標。詳情請參閱「建立及管理安全代碼」。

    8. 針對輸入規則,指定來源網路類型:

      • 如要篩選屬於任何網路類型的連入流量,請選取「所有網路類型」
      • 如要篩選屬於特定網路類型的連入流量,請選取「特定網路類型」
        • 如要篩除屬於網際網路 (INTERNET) 網路類型的連入流量,請選取「網際網路」
        • 如要篩選屬於非網際網路 (NON-INTERNET) 網路類型的連入流量,請選取「非網際網路」
        • 如要篩選屬於虛擬私有雲內部 (INTRA_VPC) 網路類型的輸入流量,請選取「虛擬私有雲內部」
        • 如要篩選屬於虛擬私有雲網路 (VPC_NETWORKS) 類型的連入流量,請選取「虛擬私有雲網路」,然後使用下列按鈕指定一或多個網路:
          • 選取目前專案:可從目前專案新增一或多個網路。
          • 手動輸入網路:可讓你手動輸入專案和網路。
          • 選取專案:可選擇專案,然後從該專案中選擇網路。 如要進一步瞭解網路類型,請參閱「網路類型」。
    9. 針對輸出規則,指定目的地網路類型:

      • 如要篩選屬於任何網路類型的輸出流量,請選取「所有網路類型」
      • 如要篩選屬於特定網路類型的輸出流量,請選取「特定網路類型」
        • 如要篩選屬於網際網路 (INTERNET) 網路類型的輸出流量,請選取「網際網路」
        • 如要篩選屬於非網際網路 (NON-INTERNET) 網路類型的輸出流量,請選取「非網際網路」。 如要進一步瞭解網路類型,請參閱「網路類型」。
    10. 針對「Ingress」(輸入) 規則,指定「Source」(來源) 篩選器:

      • 如要依來源 IPv4 範圍篩選傳入流量,請選取「IPv4」,然後在「IP 範圍」欄位中輸入 CIDR 區塊。針對任何 IPv4 來源使用 0.0.0.0/0
      • 如要依來源 IPv6 範圍篩選傳入流量,請選取「IPv6」,然後在「IPv6 範圍」欄位中輸入 CIDR 區塊。如為任何 IPv6 來源,請使用 ::/0
    11. 針對「Egress」(輸出) 規則,指定「Destination filter」(目的地篩選器)

      • 如要依目的地 IPv4 範圍篩選傳出流量,請選取「IPv4」,然後在「IP 範圍」欄位中輸入 CIDR 區塊。針對任何 IPv4 目的地使用 0.0.0.0/0
      • 如要依目的地 IPv6 範圍篩選傳出流量,請選取「IPv6」,然後在「IPv6 範圍」欄位中輸入 CIDR 區塊。針對任何 IPv6 目的地使用 ::/0
    12. 選用:如果您要建立輸入規則,請指定此規則適用的來源 FQDN。如果您要建立輸出規則,請選取這項規則適用的目的地 FQDN。如要進一步瞭解網域名稱物件,請參閱完整網域名稱 (FQDN) 物件

    13. 選用:如果您要建立輸入規則,請選取這項規則適用的來源地理位置。如要建立輸出規則,請選取這項規則適用的目的地地理位置。如要進一步瞭解地理位置物件,請參閱地理位置物件

    14. 選用:如果您要建立 Ingress 規則,請選取要套用這項規則的來源位址群組。如果您要建立輸出規則,請選取這項規則適用的目的地位址群組。如要進一步瞭解位址群組,請參閱「防火牆政策的位址群組」。

    15. 選用:如果您要建立輸入規則,請選取這項規則適用的 Google Cloud Threat Intelligence 清單。如要建立輸出規則,請選取此規則適用的目的地 Google Cloud Threat Intelligence 清單。如要進一步瞭解 Google Threat Intelligence,請參閱「防火牆政策規則的 Google Threat Intelligence」。

    16. 選用:針對「Ingress」(輸入) 規則,指定「Destination」(目的地) 篩選器:

      • 如要依目的地 IPv4 範圍篩選傳入流量,請選取「IPv4」,並在「IP 範圍」欄位中輸入 CIDR 區塊。針對任何 IPv4 目的地使用 0.0.0.0/0
      • 如要依目的地 IPv6 範圍篩選傳入流量,請選取「IPv6 範圍」,並在「目的地 IPv6 範圍」欄位中輸入 CIDR 區塊。針對任何 IPv6 目的地使用 ::/0。詳情請參閱「輸入規則的目的地」。
    17. 選用:針對「Egress」(輸出) 規則,指定「Source」(來源) 篩選器:

      • 如要依來源 IPv4 範圍篩選傳出流量,請選取「IPv4」,然後在「IP 範圍」欄位中輸入 CIDR 區塊。針對任何 IPv4 來源使用 0.0.0.0/0
      • 如要依來源 IPv6 範圍篩選傳出流量,請選取「IPv6」,然後在「IPv6 範圍」欄位中輸入 CIDR 區塊。如為任何 IPv6 來源,請使用 ::/0。 詳情請參閱「輸出規則的來源」。
    18. 在「通訊協定和通訊埠」中,指定規則要套用至所有通訊協定和所有目的地通訊埠,或是指定規則要套用至哪些通訊協定和目的地通訊埠。

      如要指定 IPv4 ICMP,請使用 icmp 或通訊協定編號 1。如要指定 IPv6 ICMP,請使用通訊協定編號 58。如要進一步瞭解通訊協定,請參閱「通訊協定和連接埠」。

    19. 點選「建立」

  6. 按一下「建立防火牆規則」,新增其他規則。

gcloud

如要建立輸入規則,請使用下列指令:

gcloud compute firewall-policies rules create PRIORITY \
    --firewall-policy POLICY_NAME \
    --organization ORG_ID \
    --description DESCRIPTION \
    --direction INGRESS \
    --action ACTION \
    [--enable-logging | --no-enable-logging] \
    [--disabled | --no-disabled] \
    [--target-resources TARGET_NETWORKS] \
    [--target-secure-tags TARGET_SECURE_TAGS] \
    [--target-service-accounts TARGET_SERVICE_ACCOUNTS] \
    [--layer4-configs LAYER_4_CONFIGS] \
    [--src-ip-ranges SRC_IP_RANGES] \
    [--src-address-groups SRC_ADDRESS_GROUPS] \
    [--src-fqdns SRC_DOMAIN_NAMES] \
    [--src-secure-tags SRC_SECURE_TAGS] \
    [--src-region-codes SRC_COUNTRY_CODES] \
    [--src-threat-intelligence SRC_THREAT_LIST_NAMES] \
    [--src-network-type SRC_NETWORK_TYPE] \
    [--src-networks SRC_VPC_NETWORK] \
    [--dest-ip-ranges DEST_IP_RANGES]

更改下列內容:

  • PRIORITY:政策中規則的數值評估順序。系統會從最高優先順序到最低優先順序評估規則,其中 0 代表最高優先順序。每項規則的優先順序不得重複。建議您將規則優先順序值間的差異設為大於 1 (例如 100200300),這樣之後就能在現有規則之間建立新規則。
  • POLICY_NAME:包含新規則的階層式網路防火牆政策名稱。
  • ORG_ID:包含階層式防火牆政策的機構 ID。
  • DESCRIPTION:新規則的選用說明
  • ACTION:指定下列其中一項動作:
    • allow:允許符合規則的連線。
    • deny:拒絕符合規則的連線。
    • apply_security_profile_group:將封包透明地傳送至設定的防火牆端點,以進行第 7 層檢查。如果動作是 apply_security_profile_group
      • 您必須加入 --security-profile-group SECURITY_PROFILE_GROUP,其中 SECURITY_PROFILE_GROUP 是用於第 7 層檢查的安全性設定檔群組名稱。
      • 加入 --tls-inspect--no-tls-inspect 即可啟用或停用 TLS 檢查功能。
    • goto_next:繼續執行防火牆規則評估程序的下一個步驟。
  • --enable-logging--no-enable-logging 參數可啟用或停用防火牆規則記錄。
  • --disabled--no-disabled 參數可控制規則是否停用 (不強制執行) 或啟用 (強制執行)。
  • 指定目標
    • TARGET_NETWORKS:以半形逗號分隔的虛擬私有雲網路清單,以 https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME 形式指定網路資源網址。
    • TARGET_SECURE_TAGS:以半形逗號分隔的安全標記清單。目標安全標記值必須來自具有機構用途資料的安全標記鍵。
    • TARGET_SERVICE_ACCOUNTS:以半形逗號分隔的服務帳戶清單。
    • 如果省略 target-resources--target-secure-tags--target-service-accounts 參數,規則會套用至最廣泛的目標。
  • LAYER_4_CONFIGS:以半形逗號分隔的第 4 層設定清單。每個第 4 層設定可以是下列其中一種:
    • IP 通訊協定名稱 (tcp) 或 IANA IP 通訊協定編號 (17),不含任何目的地連接埠。
    • 以半形冒號 (tcp:80) 分隔的 IP 通訊協定名稱和目的地通訊埠。
    • IP 通訊協定名稱和目的地通訊埠範圍,以冒號分隔,並以破折號分隔起始和結束目的地通訊埠 (tcp:5000-6000)。詳情請參閱「通訊協定和通訊埠」。
  • 為輸入規則指定來源
    • SRC_IP_RANGES:以半形逗號分隔的 IP 位址範圍清單 (CIDR 格式)。清單中的範圍必須全為 IPv4 CIDR 或 IPv6 CIDR,不得混用。
    • SRC_ADDRESS_GROUPS:以半形逗號分隔的地址群組清單,這些地址群組由不重複網址識別碼指定。清單中的位址群組必須包含所有 IPv4 位址或所有 IPv6 位址, 不得同時包含兩者。
    • SRC_DOMAIN_NAMES:以半形逗號分隔的 FQDN 物件清單,格式為網域名稱
    • SRC_SECURE_TAGS:以半形逗號分隔的標記清單。如果 --src-network-typeINTERNET,則無法使用 --src-secure-tags 參數。
    • SRC_COUNTRY_CODES:以半形逗號分隔的雙字母國家/地區代碼清單。詳情請參閱「地理位置物件」。如果 --src-network-typeNON_INTERNETVPC_NETWORKINTRA_VPC,則無法使用 --src-region-codes 參數。
    • SRC_THREAT_LIST_NAMES:以半形逗號分隔的 Google Threat Intelligence 清單名稱。詳情請參閱「Google Threat Intelligence for firewall policy rules」。如果 --src-network-typeNON_INTERNETVPC_NETWORKINTRA_VPC,則無法使用 --src-threat-intelligence 參數。
    • SRC_NETWORK_TYPE:定義要與其他支援的目的地參數搭配使用的來源網路類型,以產生特定目的地組合。有效值為 INTERNETNON_INTERNETVPC_NETWORKINTRA_VPC。詳情請參閱「網路類型」。
    • SRC_VPC_NETWORK:以半形逗號分隔的虛擬私有雲網路清單,以網址 ID 指定。只有在 --src-network-typeVPC_NETWORKS 時,才指定這項參數。
  • 視需要指定輸入規則的目的地
    • DEST_IP_RANGES:以半形逗號分隔的 IP 位址範圍清單 (CIDR 格式)。清單中的範圍必須全為 IPv4 CIDR 或 IPv6 CIDR,不得兩者混用。

如要建立輸出規則,請使用下列指令:

gcloud compute firewall-policies rules create PRIORITY \
    --firewall-policy POLICY_NAME \
    --organization ORG_ID \
    --description DESCRIPTION \
    --direction EGRESS \
    --action ACTION \
    [--enable-logging | --no-enable-logging] \
    [--disabled | --no-disabled] \
    [--target-resources TARGET_NETWORKS] \
    [--target-secure-tags TARGET_SECURE_TAGS] \
    [--target-service-accounts TARGET_SERVICE_ACCOUNTS] \
    [--layer4-configs LAYER_4_CONFIGS] \
    [--src-ip-ranges SRC_IP_RANGES] \
    [--dest-ip-ranges DEST_IP_RANGES] \
    [--dest-address-groups DEST_ADDRESS_GROUPS] \
    [--dest-fqdns DEST_DOMAIN_NAMES] \
    [--dest-region-codes DEST_COUNTRY_CODES] \
    [--dest-threat-intelligence DEST_THREAT_LIST_NAMES] \
    [--dest-network-type DEST_NETWORK_TYPE]

更改下列內容:

  • PRIORITY:政策中規則的數值評估順序。系統會從最高優先順序到最低優先順序評估規則,其中 0 代表最高優先順序。每項規則的優先順序不得重複。建議您將規則優先順序值間的差異設為大於 1 (例如 100200300),這樣之後就能在現有規則之間建立新規則。
  • POLICY_NAME:包含新規則的階層式網路防火牆政策名稱。
  • ORG_ID:包含階層式防火牆政策的機構 ID。
  • DESCRIPTION:新規則的選用說明
  • ACTION:指定下列其中一項動作:
    • allow:允許符合規則的連線。
    • deny:拒絕符合規則的連線。
    • apply_security_profile_group:將封包透明地傳送至設定的防火牆端點,以進行第 7 層檢查。如果動作是 apply_security_profile_group
      • 您必須加入 --security-profile-group SECURITY_PROFILE_GROUP,其中 SECURITY_PROFILE_GROUP 是用於第 7 層檢查的安全性設定檔群組名稱。
      • 加入 --tls-inspect--no-tls-inspect 即可啟用或停用 TLS 檢查功能。
    • goto_next:繼續執行防火牆規則評估程序的下一個步驟。
  • --enable-logging--no-enable-logging 參數可啟用或停用防火牆規則記錄。
  • --disabled--no-disabled 參數可控制規則是否停用 (不強制執行) 或啟用 (強制執行)。
  • 指定目標
    • TARGET_NETWORKS:以半形逗號分隔的虛擬私有雲網路清單,以 https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME 形式指定網路資源網址。
    • TARGET_SECURE_TAGS:以半形逗號分隔的安全標記清單。目標安全標記值必須來自具有機構用途資料的安全標記鍵。
    • TARGET_SERVICE_ACCOUNTS:以半形逗號分隔的服務帳戶清單。
    • 如果省略 target-resources--target-secure-tags--target-service-accounts 參數,規則會套用至最廣泛的目標。
  • LAYER_4_CONFIGS:以半形逗號分隔的第 4 層設定清單。每個第 4 層設定可以是下列其中一種:
    • IP 通訊協定名稱 (tcp) 或 IANA IP 通訊協定編號 (17),不含任何目的地連接埠。
    • 以半形冒號 (tcp:80) 分隔的 IP 通訊協定名稱和目的地通訊埠。
    • IP 通訊協定名稱和目的地通訊埠範圍,以冒號分隔,並以破折號分隔起始和結束目的地通訊埠 (tcp:5000-6000)。詳情請參閱「通訊協定和通訊埠」。
  • (選用) 指定輸出規則的來源
    • SRC_IP_RANGES:以半形逗號分隔的 IP 位址範圍清單 (CIDR 格式)。清單中的範圍必須全為 IPv4 CIDR 或 IPv6 CIDR,不得兩者混用。
  • 指定輸出規則的目的地
    • DEST_IP_RANGES:以半形逗號分隔的 IP 位址範圍清單 (CIDR 格式)。清單中的範圍必須全為 IPv4 CIDR 或 IPv6 CIDR,不得兩者混用。
    • DEST_ADDRESS_GROUPS:以半形逗號分隔的地址群組清單,這些地址群組由不重複網址識別碼指定。
    • DEST_DOMAIN_NAMES:以半形逗號分隔的 FQDN 物件清單,格式為網域名稱
    • DEST_COUNTRY_CODES:以半形逗號分隔的雙字母國家/地區代碼清單。詳情請參閱地理位置物件
    • DEST_THREAT_LIST_NAMES:以半形逗號分隔的 Google Threat Intelligence 清單名稱。詳情請參閱防火牆政策規則的 Google Threat Intelligence
    • DEST_NETWORK_TYPE:定義要與其他支援的目的地參數搭配使用的目的地網路類型,以產生特定目的地組合。有效值為 INTERNETNON_INTERNET。詳情請參閱「網路類型」。

列出政策中的所有規則

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下您的政策。規則會列在「防火牆規則」分頁中。

gcloud

gcloud compute firewall-policies list-rules POLICY_NAME \
    --organization ORG_ID

說明規則

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下政策。

  4. 按一下規則的優先順序。

gcloud

gcloud compute firewall-policies rules describe PRIORITY \
    --organization ORG_ID \
    --firewall-policy POLICY_NAME

更改下列內容:

  • PRIORITY:要查看的規則優先順序。由於每個規則的優先順序不得重複,這項設定可做為規則的專屬 ID
  • ORG_ID:貴機構的 ID
  • POLICY_NAME:包含規則的政策簡短名稱或系統產生名稱

更新規則

如需欄位說明,請參閱「建立規則」。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下政策。

  4. 按一下規則的優先順序。

  5. 按一下 [編輯]

  6. 修改要變更的欄位。

  7. 按一下 [儲存]

gcloud

gcloud compute firewall-policies rules update RULE_NAME \
    --firewall-policy POLICY_NAME \
    --organization ORG_ID \
    [...fields you want to modify...]

將規則從一項政策複製到另一項政策

從目標政策中移除所有規則,並以來源政策中的規則取代。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下要複製規則的政策。

  4. 按一下畫面頂端的「複製」

  5. 提供目標政策的名稱。

  6. 如要立即建立新政策的關聯,請按一下「繼續」,開啟「將政策與資源建立關聯」部分。

  7. 按一下 [Clone] (複製)。

gcloud

gcloud compute firewall-policies clone-rules POLICY_NAME \
    --organization ORG_ID \
    --source-firewall-policy SOURCE_POLICY

更改下列內容:

  • POLICY_NAME:接收複製規則的政策
  • ORG_ID:貴機構的 ID
  • SOURCE_POLICY:要從中複製規則的政策,必須是資源的網址

刪除規則

從政策中刪除規則後,該規則就不會再套用至規則目標的新連線。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 在專案選取器選單中,選取您的機構 ID 或包含政策的資料夾。

  3. 按一下政策。

  4. 選取要刪除的規則。

  5. 按一下「Delete」(刪除)

gcloud

gcloud compute firewall-policies rules delete PRIORITY \
    --organization ORG_ID \
    --firewall-policy POLICY_NAME

更改下列內容:

  • PRIORITY:要從政策中刪除的規則優先順序
  • ORG_ID:貴機構的 ID
  • POLICY_NAME:包含規則的政策

取得網路的有效防火牆規則

您可以查看適用於虛擬私有雲網路所有區域的所有階層式防火牆政策規則、虛擬私有雲防火牆規則和全域網路防火牆政策規則。

控制台

  1. 前往 Google Cloud 控制台的「VPC Networks」(虛擬私有雲網路) 頁面。

    前往「VPC networks」(虛擬私有雲網路)

  2. 按一下要查看防火牆政策規則的網路。

  3. 按一下「防火牆」

  4. 展開每個防火牆政策,即可查看套用至這個網路的規則。

gcloud

gcloud compute networks get-effective-firewalls NETWORK_NAME

NETWORK_NAME 替換為要查看有效規則的網路。

您也可以從「防火牆」頁面查看網路的有效防火牆規則。

控制台

  1. 前往 Google Cloud 控制台的「Firewall policies」(防火牆政策) 頁面。

    前往「Firewall policies」(防火牆政策)

  2. 防火牆政策會列在「這項專案繼承的防火牆政策」專區中。

  3. 按一下各項防火牆政策,即可查看套用至這個網路的規則。

取得 VM 介面的有效防火牆規則

您可以查看套用到 Compute Engine VM 網路介面的所有防火牆規則,包括所有適用的防火牆政策和虛擬私有雲防火牆規則。

控制台

  1. 前往 Google Cloud 控制台的「VM instances」(VM 執行個體) 頁面

    前往 VM 執行個體

  2. 在專案選取器選單中,選取包含 VM 的專案。

  3. 按一下 VM。

  4. 在「網路介面」部分,點選介面。

  5. 有效防火牆規則會顯示在「網路設定分析」部分中的「防火牆」分頁。

gcloud

gcloud compute instances network-interfaces get-effective-firewalls INSTANCE_NAME \
    [--network-interface INTERFACE] \
    [--zone ZONE]

更改下列內容:

  • INSTANCE_NAME:要查看有效規則的 VM;如果未指定介面,指令會傳回主要介面 (nic0) 的規則。
  • INTERFACE:要查看有效規則的 VM 介面;預設值為 nic0
  • ZONE:VM 的區域;如果所選區域已設為預設區域,則此行可省略。

疑難排解

本節說明您可能會遇到的錯誤訊息。

  • FirewallPolicy may not specify a name. One will be provided.

    您無法指定政策名稱。階層式防火牆政策「名稱」是政策建立時,由 Google Cloud 產生的數值 ID。不過,您可以指定較容易記住的簡稱,在許多情況下做為別名。

  • FirewallPolicy may not specify associations on creation.

    只有在建立階層式防火牆政策後,才能建立關聯。

  • Can not move firewall policy to a different organization.

    階層式防火牆政策只能在同一個機構內移動。

  • The attachment already has an association. Please set the option of replacing existing association to true if you want to replace the old one.

    如果資源已附加階層式防火牆政策,除非將取代現有關聯的選項設為 true,否則附加作業會失敗。

  • Cannot have rules with the same priorities.

    階層式防火牆政策中的規則優先順序不得重複。

  • Direction must be specified on firewall policy rule.

    直接傳送 REST 要求建立階層式防火牆政策規則時,必須指定規則的方向。使用 Google Cloud CLI 時,如果未指定方向,預設值為 INGRESS

  • Can not specify enable_logging on a goto_next rule.

    含有 goto_next 動作的規則不允許防火牆記錄,因為 goto_next 動作用於表示不同防火牆政策的評估順序,並非終端動作 (例如 ALLOW 或 DENY)。

  • Must specify at least one destination on Firewall policy rule.

    防火牆政策規則中的 layer4Configs 旗標必須至少指定一項通訊協定,或是通訊協定和目的地通訊埠。

    如要進一步瞭解如何排解防火牆政策規則問題,請參閱「虛擬私有雲防火牆規則疑難排解」。

後續步驟