共用方式為


[已淘汰]將記錄轉寄站部署至內嵌 Syslog 和 CEF 記錄,以Microsoft Sentinel

重要

許多設備與裝置的記錄收集現在都透過下列項目支援:透過 AMA 的常見事件格式 (CEF)、透過 AMA 的 Syslog,或透過 Microsoft Sentinel 中 AMA 資料連接器的自訂記錄。 如需詳細資訊,請參閱尋找您的 Microsoft Sentinel 資料連接器

警告

本文參考 CentOS,這是已達生命週期結束 (EOL) 狀態的 Linux 發行版本。 請據此考慮您的使用方式和規劃。 如需詳細資訊,請參閱 CentOS 生命週期結束指導

若要將 Syslog 和 CEF 記錄內嵌至 Microsoft Sentinel,特別是從您無法直接安裝 Log Analytics 代理程式的裝置和設備,您必須指定並設定 Linux 電腦,以從您的裝置收集記錄,並將其轉送到您的 Microsoft Sentinel 工作區。 在您的內部部署環境如 Azure VM 或另一個雲端中的 VM,此機器可以是實體或虛擬機器。

此電腦有兩個元件參與此程序:

  • 收集記錄的 syslog 精靈 rsyslogsyslog-ng
  • Log Analytics 代理程式 (也稱為 OMS 代理程式) 會將記錄轉送至 Microsoft Sentinel。

透過下方提供的連結,您會在指定的機器上執行指令碼,以完成下列工作:

  • 安裝適用於 Linux 的 Log Analytics 代理程式 (也稱為 OMS 代理程式) 並針對下列用途進行設定:

    • 接聽來自 TCP 通訊埠 25226 內建 Linux Syslog 精靈的 CEF 訊息
    • 透過 TLS 將訊息安全地傳送到您的 Microsoft Sentinel 工作區,在此對訊息進行解析和擴充
  • 針對下列用途,設定內建 Linux Syslog 精靈 (rsyslog. d/Syslog-ng):

    • 接聽來自 TCP 通訊埠 514 上安全性解決方案的 Syslog 訊息
    • 透過 TCP 通訊埠 25226,只將識別為 CEF 的訊息轉送到 localhost 上的 Log Analytics 代理程式

重要

Log Analytics 代理程式將於 2024 年 8 月 31 日淘汰。 如果您在 Microsoft Sentinel 部署中使用記錄分析代理程式,我們建議您開始規劃移轉至 AMA。 如需詳細資訊,請參閱 適用於 Microsoft Sentinel 的 AMA 移轉

如需使用 Azure 監視器代理程式部署 Syslog 和/或 CEF 記錄的相關資訊,請檢閱透過 CEF 和 Syslog 格式將記錄串流到 Microsoft Sentinel 的 選項。

必要條件

每個數字連接器都有自己的一組必要條件。 必要條件可能包括您必須具有 Azure 工作區、訂用帳戶或原則的特定權限。 或者,您必須符合您要連線之合作夥伴資料來源的其他需求。

每個資料連接器的必要條件都會列在 Microsoft Sentinel 中相關資料連接器的頁面上。

在 Microsoft Sentinel 中,從 Content Hub 安裝產品解決方案。 如果未列出產品,請安裝適用於常見事件格式的解決方案。 如需詳細資訊,請參閱探索和管理 Microsoft Sentinel 現成可用的內容

重要

操作系統版本可能會有不同的支援日期和生命週期。 建議您檢查每個發行版的官方文件,以取得最準確且最新的支援和生命週期結束日期。

您的機器必須符合下列需求:

  • 硬體 (實體/虛擬)

    • 您的 Linux 機器必須至少有 4 個 CPU 核心和 8 GB RAM

      注意

      • 具有上述硬體設定並使用 rsyslog 精靈的單一記錄轉寄站機器,可支援最多每秒 8500 個事件 (EPS) 的收集容量。
  • 作業系統

    • Amazon Linux 2 (僅限 64 位元)
    • Oracle Linux 7、8 (64 位元/32 位元)
    • Red Hat Enterprise Linux (RHEL) Server 7 和 8 (不可使用 6) ,包括次要版本 (64 位元/32 位元)
    • Debian GNU/Linux 8 和 9 (64 位元/32 位元)
    • Ubuntu Linux 20.04 LTS (僅限 64 位元)
    • SuSE Linux Enterprise Server 12、15 (僅限 64 位元)
    • 不再支援 CentOS 發行版,因為它們已達到生命週期結束 (EOL)的狀態。 請參閱本節開頭的筆記的注意事項。
  • 精靈版本

    • Rsyslog: v8
    • Syslog-ng: 2.1 - 3.22.1
  • Packages

    • 您必須在 Linux 機器上安裝 Python 2.73
      使用 python --versionpython3 --version 命令來檢查。
    • 您必須擁有 GNU Wget 套件。
  • Syslog RFC 支援

    • Syslog RFC 3164
    • Syslog RFC 5424
  • Configuration

    • 您在指定的 Linux 機器上必須具有更高的權限 (sudo)。
    • 在您安裝 Log Analytics 代理程式之前,Linux 機器不得連線到任何 Azure 工作區。
  • Data

    • 您在此程序中的某個階段,可能會需要 Microsoft Sentinel 工作區的工作區識別碼工作區主要金鑰。 您可以在工作區設定的 [代理程式管理] 下找到這些資訊。

安全性考量

請務必根據組織的安全性原則來設定機器的安全性。 例如,您可根據公司網路安全性原則設定網路,並且依需求變更精靈中的連接埠和通訊協定。 您可以使用下列指示來改善機器安全性設定:在 Azure 中保護 VM網路安全性的最佳做法

如果您的裝置透過 TLS 傳送 Syslog 和 CEF 記錄 (例如,由於您的記錄轉寄站位於雲端),則您必須設定 Syslog 精靈 (rsyslog 或 syslog-ng) 才能在 TLS 中通訊。 如需詳細資訊,請參閱下列文件:

執行部署指令碼

  1. 在 Microsoft Sentinel 中,選取 [資料連接器]

  2. 從連接器資源庫選取您產品的連接器。 如果未列出您的產品,請選取 [一般事件格式] [CEF]

  3. 在連接器的詳細資料窗格中,選取 [開啟連接器] 頁面。

  4. 在連接器頁面上,在 [1.2 在 Linux 電腦上安裝 CEF 收集器] 下的指示中,複製 [執行下列指令碼安裝及套用 CEF 收集器] 底下提供的連結。
    如果您沒有該頁面的存取權,請從下列文字複製連結 (複製並貼上上述工作區識別碼主索引鍵,以取代預留位置):

    sudo wget -O cef_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/CEF/cef_installer.py&&sudo python cef_installer.py [WorkspaceID] [Workspace Primary Key]
    
  5. 將連結或文字貼到記錄轉寄站上的命令列中,然後加以執行。

  6. 執行指令碼時,請檢查以確定您不會收到任何錯誤或警告訊息。

    • 您可能會收到一則訊息,指示您執行命令來更正[電腦] 欄位對應的問題。 如需詳細資訊,請參閱部署指令碼中的說明
  7. 設定裝置以傳送 CEF 訊息

    注意

    使用同一部機器來同時轉送一般 Syslog CEF 訊息

    如果您計畫使用此記錄轉寄站機器轉送 Syslog 訊息和 CEF,就需要進行以下動作,以避免事件在 Syslog 和 CommonSecurityLog 資料表中重複:

    1. 在所有以 CEF 格式將記錄傳送至轉寄站的來源機器上,您都必須編輯 Syslog 設定檔以移除用於傳送 CEF 訊息的設備。 如此一來,CEF 中傳送的設施也不會在 Syslog 中傳送。 如需如何執行這項操作的詳細指示,請參閱在 Linux 代理程式上設定 Syslog

    2. 您必須在這些機器上執行下列命令,才能停用代理程式與 Microsoft Sentinel 中 Syslog 設定的同步處理。 這麼做可確保您在上一個步驟中所進行的設定變更不會遭到覆寫。
      sudo su omsagent -c 'python /opt/microsoft/omsconfig/Scripts/OMS_MetaConfigHelper.py --disable'

部署指令碼解說

以下是部署指令碼動作的逐命令描述。

選擇 syslog 精靈以查看適當的描述。

  1. 下載並安裝 Log Analytics 代理程式:

    • 下載 Log Analytics (OMS) Linux 代理程式的安裝指令碼。

      wget -O onboard_agent.sh https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/
          master/installer/scripts/onboard_agent.sh
      
    • 安裝 Log Analytics 代理程式。

      sh onboard_agent.sh -w [workspaceID] -s [Primary Key] -d opinsights.azure.com
      
  2. 將 Log Analytics 代理程式設定為接聽連接埠 25226,並將 CEF 訊息轉送至 Microsoft Sentinel:

    • 從 Log Analytics 代理程式 GitHub 存放庫下載設定。

      wget -O /etc/opt/microsoft/omsagent/[workspaceID]/conf/omsagent.d/security_events.conf
          https://raw.githubusercontent.com/microsoft/OMS-Agent-for-Linux/master/installer/conf/
          omsagent.d/security_events.conf
      
  3. 設定 Syslog 精靈:

    • 使用 syslog 組態檔 /etc/rsyslog.conf 開啟 TCP 通訊的連接埠 514。

    • 設定精靈將 CEF 訊息轉送至 TCP 連接埠 25226 上的 Log Analytics 代理程式,方法是將特殊組態檔 security-config-omsagent.conf 插入 syslog 精靈目錄 /etc/rsyslog.d/

      security-config-omsagent.conf 檔案的內容:

      if $rawmsg contains "CEF:" or $rawmsg contains "ASA-" then @@127.0.0.1:25226 
      
  4. 重新啟動 syslog 精靈和 Log Analytics 代理程式:

    • 重新開機 rsyslog 精靈。

      service rsyslog restart
      
    • 重新啟動 Log Analytics 代理程式。

      /opt/microsoft/omsagent/bin/service_control restart [workspaceID]
      
  5. 確認 [電腦] 欄位的對應如預期:

    • 使用下列命令,在 Log Analytics 代理程式中確保正確對應 syslog 來源中的 [電腦] 欄位:

      grep -i "'Host' => record\['host'\]"  /opt/microsoft/omsagent/plugin/filter_syslog_security.rb
      
    • 如果發生對應問題,指令碼將產生錯誤訊息,指示您手動執行下列命令 (套用工作區識別碼以取代預留位置)。 此命令將確保會正確對應並重新啟動代理程式。

      sudo sed -i -e "/'Severity' => tags\[tags.size - 1\]/ a \ \t 'Host' => record['host']" -e "s/'Severity' => tags\[tags.size - 1\]/&,/" /opt/microsoft/omsagent/plugin/filter_syslog_security.rb && sudo /opt/microsoft/omsagent/bin/service_control restart [workspaceID]
      

下一步

在本文件中,您已瞭解如何部署 Log Analytics 代理程式,以將 CEF 設備連線至 Microsoft Sentinel。 若要深入了解 Microsoft Sentinel,請參閱下列文章: