檢視及改進防火牆規則

本頁面說明一些常見的 Firewall Insights 工作,可協助您查看及最佳化虛擬私有雲 (VPC) 防火牆的使用情形。執行這些工作,最佳化防火牆規則設定並加強安全界限。

舉例來說,您是網路管理員或網路安全工程師,負責支援多個大型共用虛擬私有雲網路,其中包含許多專案和應用程式。您想檢查並改善長期累積的大量防火牆規則,確保這些規則與網路的預期狀態一致。您可以執行下列工作,檢查及最佳化防火牆規則。

必要角色和權限

如要取得使用防火牆洞察功能所需的權限,請要求管理員在專案中授予下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這些預先定義的角色具備使用 Firewall Insights 所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要使用防火牆深入分析,必須具備下列權限:

  • recommender.computeFirewallInsights.list
  • recommender.computeFirewallInsights.update

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

查看過去 30 天內套用至 VM 的規則

如要查看可協助您避免設定錯誤和不必要的陰影規則,請按照下列步驟操作:

主控台

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

    前往 Compute Engine VM 執行個體

  2. 在「篩選條件」欄位中輸入下列任一鍵/值組合,即可篩選執行個體,找出相關 VM。

    Network tags:TAG_NAME

    TAG_NAME 替換為指派給虛擬私有雲網路的標記。

    Internal IP:INTERNAL_IP_ADDRESS

    INTERNAL_IP_ADDRESS 替換為 VM 介面的內部 IP 位址。

    External IP:EXTERNAL_IP_ADDRESS

    EXTERNAL_IP_ADDRESS 替換為 VM 介面的外部 IP 位址。

  3. 在 VM 介面的搜尋結果中,選取 VM 並點選「更多動作」選單。

  4. 在選單中選取「查看網路詳細資料」

  5. 在「網路介面詳細資料」頁面上,完成下列步驟:

    1. 在「防火牆和路徑詳細資料」部分,依序點選「防火牆」和「篩選」
    2. 輸入 last hit after:YYYY-MM-DD 篩選防火牆規則。這個篩選運算式會找出近期有命中記錄的防火牆規則。

    3. 如要查看防火牆規則,請按一下「命中次數」欄中的數字,開啟防火牆記錄並查看流量詳細資料,如下列範例查詢所示。如要輸入查詢,請按一下「提交篩選條件」

      jsonPayload.rule_details.reference:("network:network1/firewall:allow-tcp") AND
      jsonPayload.instance.project_id:("p6ntest-firewall-intelligence") AND
      jsonPayload.instance.zone:("us-central1-c") AND
      jsonPayload.instance.vm_name:("instance2")
      
    4. 新增一或多個 Cloud Logging 篩選器,進一步篩選防火牆記錄詳細資料。舉例來說,下列範例查詢會新增篩選器,依來源 IP 位址 (src_ip) 進行篩選。如要輸入查詢,請按一下「提交篩選器」

      jsonPayload.rule_details.reference:("network:network1/firewall:allow-tcp") AND
      jsonPayload.instance.project_id:("p6ntest-firewall-intelligence") AND
      jsonPayload.instance.zone:("us-central1-c") AND
      jsonPayload.instance.vm_name:("instance2") AND
      jsonPayload.connection.src_ip:("10.0.1.2")
      

偵測 deny 防火牆規則的命中次數是否突然增加

您可以設定 Cloud Monitoring,偵測虛擬私有雲 deny 防火牆規則的命中次數變化。舉例來說,您可以選擇在特定規則的命中次數增加特定百分比時接收快訊。設定這項快訊有助於偵測資源是否可能遭受攻擊。 Google Cloud

如要設定快訊,請按照下列步驟操作:

主控台

  1. 前往 Google Cloud 控制台的「Monitoring」頁面。

    前往「Monitoring」頁面

  2. 在導覽窗格中,依序點選「快訊」圖示 和「建立政策」圖示

  3. 在「建立快訊政策」頁面中,按一下「新增快訊條件」。 系統會新增條件。

  4. 展開「新條件」部分,然後選取「設定觸發條件」。系統隨即會開啟「Configure alert trigger」(設定快訊觸發條件) 頁面。

  5. 設定快訊條件。舉例來說,如果想在您識別的規則命中次數六小時內增加 10% 時觸發快訊,請使用下列值:

    • 條件類型:設為 Threshold
    • 快訊觸發條件:設為 Any time series violates
    • 門檻位置:設為 Above threshold
    • 門檻值:設為 10
  6. 在「進階選項」部分中,輸入條件名稱,然後按一下「下一步」

  7. 在「多條件觸發」頁面中指定條件,然後按一下「下一步」

  8. 在「設定通知」頁面,依序選取「通知管道」和「管理通知管道」

  9. 在「通知管道」視窗中,新增通知管道 (例如電子郵件地址),然後按一下「儲存」

  10. 在「通知管道」清單中,選取已新增的通知,然後按一下「確定」

  11. 在「為快訊政策命名」部分輸入名稱,然後按一下「下一步」。系統會新增快訊觸發條件。

清除遭到覆蓋的防火牆規則

如要清除遭到其他規則覆蓋的防火牆規則,請按照下列步驟操作:

主控台

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

    前往「防火牆政策」頁面

  2. 在「VPC 防火牆規則」部分,按一下「篩選器」,然後依序選取「洞察類型」> 隱藏規則

  3. 在搜尋結果中,按一下每項規則的「名稱」,即可查看詳細資料頁面。視需要檢查並清除每條規則。

如要進一步瞭解遭遮蔽的規則,請參閱遭遮蔽的規則範例

移除未使用的 allow 規則

如要評估及移除未使用的 allow 規則,請按照下列步驟操作:

主控台

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

    前往「防火牆政策」頁面

  2. 在「VPC 防火牆規則」部分,按一下「篩選器」,然後依序選取「類型」>「連入」>「上次命中時間早於」MM/DD/YYYY

    MM/DD/YYYY 替換為您要使用的日期。例如:08/31/2021

  3. 在搜尋結果中,查看每項規則「洞察」欄中的資訊。這個資料欄會顯示百分比,指出這項規則未來發揮作用的可能性。如果百分比偏高,建議保留這項規則。但如果分數偏低,請繼續查看洞察資料產生的資訊。

  4. 按一下洞察資料連結,即可顯示「洞察資料詳細資料」窗格。

  5. 在「洞察資料詳細資料」窗格中,查看這項規則的屬性,以及列出的任何類似規則的屬性。

  6. 如果規則在未來發揮作用的機率很低,且類似規則的命中模式也支持這項預測,建議您移除該規則。如要移除規則,請按一下「規則名稱」。 「防火牆規則詳細資料」頁面隨即開啟。

  7. 點選「刪除」。

  8. 在確認對話方塊中按一下「刪除」

allow 規則中移除未發揮作用的屬性

如要評估及移除未使用的屬性,請按照下列步驟操作:

主控台

  1. 前往 Google Cloud 控制台的「Firewall Insights」頁面。

    前往「防火牆深入分析」

  2. 在「允許規則含有未發揮作用的屬性」資訊卡上,按一下「查看完整清單」。回應中,控制台會顯示「有未發揮作用之屬性的允許規則」 Google Cloud 頁面。這個頁面會列出觀測期間內有未發揮作用屬性的所有規則。

  3. 按一下「洞察」Insight欄中顯示的文字。「洞察詳細資料」頁面隨即開啟。

  4. 查看頁面頂端的詳細資料。摘要包含下列詳細資料:

    • 洞察資料的名稱。
    • 這項規則未發揮作用的屬性數量。
    • 洞察資料上次更新的時間。
    • 專案中其他使用類似屬性的規則名稱。
    • 觀察期間的長度。
  5. 評估是否可以移除屬性:

    1. 查看「以下防火牆規則具有未發揮任何作用的屬性」資訊卡。查看標示為「未發揮任何作用的屬性 (及未來發揮作用的預測結果)」的欄位。這個欄位會以百分比表示屬性未來是否可能受到影響。
    2. 查看「同一項專案中有類似的防火牆規則」資訊卡。查看顯示的資料,瞭解是否使用了這項規則的屬性。
  6. 如果屬性未來命中機率偏低,且類似規則的命中模式也支持這項預測,建議從規則中移除該屬性。如要移除屬性,請按一下「洞察詳細資料」頁面上方的規則名稱。「防火牆規則詳細資料」頁面隨即開啟。

  7. 按一下「編輯」,進行所需變更,然後按一下「儲存」

縮小 allow 規則的 IP 位址範圍

請注意,您的專案可能設有防火牆規則,允許特定 IP 位址區塊存取負載平衡器健康狀態檢查或其他Google Cloud 功能。這些 IP 位址可能不會受到影響,但請勿從防火牆規則中移除。如要進一步瞭解這些範圍,請參閱 Compute Engine 說明文件

如要評估並縮緊過於寬鬆的 IP 位址範圍,請按照下列步驟操作:

主控台

  1. 前往 Google Cloud 控制台的「Firewall Insights」頁面。

    前往「防火牆深入分析」

  2. 在名為「允許規則設有過於寬鬆的 IP 位址或通訊埠範圍」的資訊卡上,按一下「查看完整清單」。Google Cloud 主控台隨即會顯示清單,列出觀察期間範圍過於寬鬆的所有規則。

  3. 在清單中找出任一規則,然後點選「洞察」Insight欄中顯示的文字。「洞察詳細資料」頁面隨即開啟。

  4. 查看頁面頂端的詳細資料。摘要包含下列詳細資料:

    • 規則名稱。
    • 可縮減的 IP 位址範圍數量。
    • 洞察資料上次更新的時間。
    • 觀察期間的長度。
  5. 評估是否可以縮小 IP 位址範圍:查看「防火牆規則的 IP 位址或通訊埠範圍過於寬鬆」資訊卡。查看建議的新 IP 位址範圍清單。

  6. 如果合適,請考慮使用深入分析中的建議,縮小 IP 位址範圍。按一下「洞察詳細資料」頁面頂端的規則名稱。「防火牆規則詳細資料」頁面隨即開啟。

  7. 按一下「編輯」,進行所需變更,然後按一下「儲存」

後續步驟