將記錄匯出至 SIEM 系統

本頁說明如何將 Google Distributed Cloud (GDC) 實體隔離環境的記錄檔匯出至外部安全性資訊和事件管理 (SIEM) 系統。這項整合功能可集中分析記錄,並強化安全監控。

記錄匯出的核心是部署SIEMOrgForwarder自訂資源。這個資源會做為設定檔,指定要接收記錄的外部 SIEM 執行個體詳細資料。管理員可以在 SIEMOrgForwarder 檔案中定義這些參數,建立簡化且安全的記錄檔匯出管道。

事前準備

如要取得管理 SIEMOrgForwarder 自訂資源所需的權限,請要求機構 IAM 管理員授予相關的 SIEM 匯出機構角色。

視您需要的存取層級和權限而定,您可能會在專案命名空間中取得這項資源的建立者、編輯者或檢視者角色。詳情請參閱「準備 IAM 權限」。

取得必要權限後,請先完成下列步驟,再將記錄匯出至外部 SIEM 系統:

  1. 建立連線:確保 GDC 與外部 SIEM 目的地之間存在連線。如有需要,請與基礎架構營運商 (IO) 合作,建立與客戶網路的上行連結。

  2. 設定環境變數:設定下列環境變數,以便執行這個頁面的指令:

    • kubeconfig 檔案的路徑:

      export KUBECONFIG=KUBECONFIG_PATH
      

      KUBECONFIG_PATH 替換為 Management API 伺服器的 kubeconfig 檔案路徑。

    • 您的專案命名空間:

      export PROJECT_NAMESPACE=PROJECT_NAMESPACE
      

設定記錄匯出作業

將記錄匯出至外部 SIEM 系統:

  1. 提供權杖,將記錄堆疊連線至 SIEM 系統。如要執行這項動作,您必須在專案命名空間中建立密鑰,以儲存權杖:

    cat <<EOF | kubectl --kubeconfig=${KUBECONFIG} apply -f -
    apiVersion: v1
    kind: Secret
    metadata:
      name: SECRET_NAME
      namespace: ${PROJECT_NAMESPACE}
    type: Opaque
    stringData:
      SECRET_FIELD: TOKEN
    EOF
    

    更改下列內容:

    • SECRET_NAME:密鑰名稱。
    • SECRET_FIELD:要儲存密鑰的欄位名稱。
    • TOKEN:您的權杖。
  2. 在專案命名空間中部署 SIEMOrgForwarder 自訂資源。您必須選擇稽核記錄或作業記錄,指定記錄類型。如要為這兩種記錄類型設定記錄匯出功能,您必須為每種類型部署 SIEMOrgForwarder 資源。

    以下範例說明如何將設定套用至 SIEMOrgForwarder 自訂資源:

      cat <<EOF | kubectl --kubeconfig=${KUBECONFIG} apply -f -
      apiVersion: logging.gdc.goog/v1
      kind: SIEMOrgForwarder
      metadata:
        name: SIEM_ORG_FORWARDER
        namespace: ${PROJECT_NAMESPACE}
      spec:
        source: LOG_TYPE
        splunkOutputs:
          - host: SIEM_HOST
            token:
              name: SECRET_NAME
              field: SECRET_FIELD
            tls: "TLS"
            netConnectTimeout: NET_CONNECT_TIMEOUT
      EOF
    

    更改下列內容:

    • SIEM_ORG_FORWARDERSIEMOrgForwarder 定義檔案的名稱。
    • LOG_TYPE:您要匯出的記錄類型。可接受的值為 auditoperational
    • SIEM_HOST:SIEM 主機的名稱。
    • SECRET_NAME:密鑰名稱。
    • SECRET_FIELD:儲存密鑰的欄位名稱。
    • TLS:傳輸層安全標準 (TLS) 的狀態。可接受的值為 "On""Off"
    • NET_CONNECT_TIMEOUT:等待建立連線的時間上限 (以秒為單位)。舉例來說,值為 180 表示要等待 180 秒。
  3. 驗證已部署的SIEMOrgForwarder自訂資源狀態:

      kubectl --kubeconfig=${KUBECONFIG} describe siemorgforwarder/SIEM_ORG_FORWARDER \
          -n ${PROJECT_NAMESPACE}
    

    根據記錄類型,檢查下列狀態:

    • 稽核記錄:檢查 AuditLoggingReady 狀態。
    • 作業記錄:檢查 OperationalLoggingReady 狀態。