收集 Kemp 負載平衡器記錄

支援:

本文說明如何使用 Bindplane 代理程式,將 Progress Kemp LoadMaster 記錄擷取至 Google Security Operations。

Progress Kemp LoadMaster (舊稱 Kemp Load Balancer) 是應用程式推送控制器 (ADC),可為企業應用程式提供負載平衡、SSL 卸載和流量管理功能。這項服務會將傳入流量分配到多部伺服器,確保高可用性、提升效能,並強化網頁應用程式和服務的安全性。

事前準備

請確認您符合下列必要條件:

  • Google SecOps 執行個體
  • Windows 2016 以上版本或 Linux 主機,並安裝 systemd
  • 如果透過 Proxy 執行,請確保防火牆通訊埠已根據 Bindplane 代理程式需求開啟
  • Progress Kemp LoadMaster 網頁使用者介面 (WUI) 的特殊存取權

取得 Bindplane 代理程式的 Google SecOps 憑證

如要向 Google SecOps 驗證 Bindplane 代理程式,請選擇下列其中一種方法:

  • 新部署作業:使用 Chronicle API (選項 1)。
  • 舊版部署作業:在 2027 年 7 月 20 日停用 Ingestion API 前,請繼續使用擷取驗證檔案 (選項 2)。
  1. 登入 Google Cloud 控制台,然後選取連結至 Google SecOps 執行個體的 Google Cloud 專案。
  2. 依序前往 「IAM & Admin」(IAM 與管理) >「Service Accounts」(服務帳戶)。
  3. 按一下「建立服務帳戶」。
  4. 提供下列設定詳細資料:
    • 「Service account name」(服務帳戶名稱):輸入帳戶名稱 (例如 bindplane-ingest)。
    • 「服務帳戶說明」:輸入說明 (例如 Bindplane agent log ingestion)。
  5. 點按「Create and continue」(建立並繼續)。
  6. 在「將專案存取權授予這個服務帳戶」部分,按一下「選取角色」,然後選取「Chronicle 編輯者」。
  7. 依序點選「繼續」和「完成」。
  8. 按一下您建立的服務帳戶,然後前往「金鑰」分頁。
  9. 依序點選「新增金鑰」>「建立新的金鑰」。
  10. 選取「JSON」,然後按一下「建立」。金鑰檔案會下載到電腦。
  11. 將金鑰檔案儲存為 Bindplane 收集器目錄中的 ingestion-auth.json (Linux 上的 /opt/observiq-otel-collector/ingestion-auth.json 或 Windows 上的 C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json),或更新 config.yaml 中的 creds_file_path,使其與儲存路徑相符。
  12. 依序前往「IAM 與管理」>「設定」,然後複製「專案編號」。設定匯出工具時會用到。

方法 2:下載擷取驗證檔案 (舊版)

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM Settings」 > 「Collection Agents」。
  3. 下載擷取驗證檔案。
  4. 將檔案安全地儲存在要安裝 Bindplane 代理程式的系統上。

取得 Google SecOps 客戶 ID

  1. 登入 Google SecOps 控制台。
  2. 依序前往「SIEM 設定」>「設定檔」。
  3. 複製並儲存「機構詳細資料」部分的客戶 ID。

安裝 Bindplane 代理程式

請按照下列操作說明,在 Windows 或 Linux 作業系統上安裝 Bindplane 代理程式。

Windows 安裝

  1. 以管理員身分開啟「命令提示字元」或「PowerShell」。
  2. 執行下列指令:

      msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux 安裝

  1. 開啟具有 root 或 sudo 權限的終端機。
  2. 執行下列指令:

      sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

其他安裝資源

如需其他安裝選項,請參閱這份安裝指南。

設定 Bindplane 代理程式,擷取 Syslog 並傳送至 Google SecOps

  1. 存取設定檔:

    • 找出 config.yaml 檔案。通常位於 Linux 的 /opt/observiq-otel-collector/ 目錄,或 Windows 的安裝目錄。
    • 使用文字編輯器 (例如 nano、vi 或記事本) 開啟檔案。
  2. 按照下列方式編輯 config.yaml 檔案:

      receivers:
        udplog:
          # Replace the port and IP address as required
          listen_address: "0.0.0.0:514"
    
      exporters:
        chronicle/chronicle_w_labels:
          protocol: https
          # Region of your instance, for example us, europe, asia-southeast1
          location: <LOCATION>
          # Project number of the Google Cloud project linked to the instance
          project: '<PROJECT_NUMBER>'
          compression: gzip
          # Adjust the path to the credentials file you downloaded in Step 1
          creds_file_path: '/path/to/ingestion-authentication-file.json'
          # Replace with your actual customer ID from Step 2
          customer_id: YOUR_CUSTOMER_ID_HERE
          endpoint: chronicle.googleapis.com
          # Add optional ingestion labels for better organization
          log_type: 'KEMP_LOADBALANCER'
          raw_log_field: body
          ingestion_labels:
    
      service:
        pipelines:
          logs/source0__chronicle_w_labels-0:
            receivers:
              - udplog
            exporters:
              - chronicle/chronicle_w_labels
    
  3. 視基礎架構需求更換連接埠和 IP 位址。

  4. 將 YOUR_CUSTOMER_ID_HERE 替換為實際的客戶 ID。

  5. 將 /path/to/ingestion-authentication-file.json 更新為步驟 1 中儲存服務帳戶金鑰檔案 (選項 1) 的檔案路徑。

  6. 將 <LOCATION> 替換為 Google SecOps 執行個體的區域 (例如 us、europe 或 asia-southeast1)。匯出工具會在這個值前面加上 chronicle.googleapis.com。如需完整清單,請參閱「區域性端點」。

  7. 將 <PROJECT_NUMBER> 替換為「IAM 與管理」>「設定」中的專案編號。

舊版 Ingestion API 匯出工具

  • 如果您使用選項 2 的擷取驗證檔案,請將 exporters 區塊替換為下列內容。將 creds_file_path 設為擷取驗證檔案的路徑。如果執行個體位於美國境外,請將 malachiteingestion-pa.googleapis.com 替換為區域端點 (例如 europe-malachiteingestion-pa.googleapis.com)。

    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: YOUR_CUSTOMER_ID_HERE
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'KEMP_LOADBALANCER'
        raw_log_field: body
        ingestion_labels:
    

重新啟動 Bindplane 代理程式,套用變更

  1. 如要在 Linux 中重新啟動 Bindplane 代理程式,請執行下列指令:

      sudo systemctl restart observiq-otel-collector
    
  2. 如要在 Windows 中重新啟動 Bindplane 代理程式,可以使用「服務」控制台,也可以輸入下列指令:

      net stop observiq-otel-collector && net start observiq-otel-collector
    

設定 Progress Kemp LoadMaster 系統記錄轉送

  1. 登入 Progress Kemp LoadMaster 網頁使用者介面 (WUI)。
  2. 依序前往「System Configuration」>「Logging Options」>「Syslog Options」。
  3. 在「Remote Syslog Host」(遠端 Syslog 主機) 欄位中,輸入 Bindplane 代理程式主機的 IP 位址 (例如 192.168.1.100)。
  4. 在「Remote Syslog Port」(遠端 Syslog 連接埠) 欄位中,輸入 514 (或在 Bindplane 中設定的連接埠)。
  5. 將「Info Syslog Messages」(資訊系統記錄訊息) 選項設為「Yes」(是) ,即可啟用資訊記錄訊息。
  6. 將「Warning Syslog Messages」選項設為「Yes」,即可啟用警告訊息。
  7. 將「Error Syslog Messages」選項設為「Yes」,即可啟用錯誤訊息。
  8. 將「Critical Syslog Messages」選項設為「Yes」,啟用重大訊息。
  9. 將「緊急系統記錄訊息」選項設為「是」,即可啟用緊急訊息。
  10. 按一下「Set Syslog Parameters」儲存設定。
  11. 如要啟用 WAF syslog 記錄功能,請依序前往「System Configuration」 > 「Logging Options」 > 「WAF Syslog Options」。
  12. 將「Remote Syslog」選項設為「Yes」。
  13. 按一下「Set WAF Syslog Parameters」儲存設定。

UDM 對應表

記錄欄位 UDM 對應 邏輯
hlen_label additional.fields 已合併
meta_sequenceId_label additional.fields 已合併
nhdrs_label additional.fields 已合併
intermediary intermediary 已合併
inter_hostname intermediary.hostname 直接對應
description metadata.description 直接對應
event_type metadata.event_type 已重新命名/對應
log_event metadata.product_event_type 直接對應
sequenceId metadata.product_log_id 直接對應
ftpmethod network.ftp.command 直接對應
http_method network.http.method 直接對應
http_response_code network.http.response_code 直接對應
process_name principal.application 直接對應
src_ip principal.ip 已合併
srcip principal.ip 已合併
src_port principal.port 直接對應
srcport principal.port 直接對應
sec_result security_result 已合併
sshd target.application 直接對應
filename target.file.full_path 直接對應
file_size target.file.size 已重新命名/對應
dest_ip target.ip 已合併
dstip target.ip 已合併
vs target.ip 已合併
dest_port target.port 直接對應
dstport target.port 直接對應
vs_port target.port 直接對應
pid target.process.pid 直接對應
http_path target.url 直接對應
resource target.url 直接對應
user target.user.userid 直接對應
不適用 additional.fields 常數:meta_sequenceId_label
不適用 extensions.auth.type 常數:AUTHTYPE_UNSPECIFIED
不適用 intermediary 常數:intermediary
不適用 metadata.event_type 常數:GENERIC_EVENT
不適用 metadata.product_name 常數:KEMP_LOADBALANCER
不適用 metadata.vendor_name 常數:KEMP
不適用 network.application_protocol 常數:HTTP
不適用 principal.ip 常數:src_ip
不適用 security_result 常數:sec_result
不適用 target.ip 常數:dest_ip
meta_sequenceId event.idm.read_only_udm.additional.fields 從變更記錄對應
event_type USER_UNCATEGORIZED 從變更記錄對應

如要進一步瞭解剖析器欄位對應,請參閱「KEMP_LOADBALANCER 剖析器參考資料」。

變更記錄

查看這個剖析器的變更記錄

還有其他問題嗎?向社群成員和 Google SecOps 專家尋求解答。