設定並驗證 Linux 版 適用於端點的 Microsoft Defender 的排除項目

使用排除功能防止 Linux 上的 適用於端點的 Microsoft Defender 掃描或監控受信任的檔案、資料夾、程序及副檔名。 排除條款有助於避免對您組織獨有的檔案或軟體產生錯誤偵測。

Linux 版 Defender for Endpoint 支援以下排除範圍:

  • 防毒 軟體(範圍 epp):排除項目適用於按需掃描、即時保護(RTP)及行為監控(BM),同時保留端點偵測與回應(EDR)可視性。

  • 全域 (範圍 global):排除條款適用於 RTP、BM 和 EDR,後者會停止相關的防毒偵測、EDR 警示及排除項目的可見性。 全域排除措施會在感測器層級生效,並在處理前靜音符合排除條件的事件。

    • 全域排除功能可在 Linux 版本101.24092.0001(2024 年 10 月)或更新版本的 Defender for Endpoint 中提供。
    • 全域排除條款不適用於網路保護。 程序排除可能會影響網路保護,阻止其檢查流量或強制執行被排除程序的規則。 欲了解更多資訊,請參閱 適用於端點的 Microsoft Defender 中的排除事項與指標概述。
    • 全域排除功能對於緩解 Linux 上 Defender for Endpoint 造成的效能問題很有幫助。

警告

定義排除項會降低 Defender for Endpoint 在 Linux 上所提供的保護。 你應該評估實施排除條款所帶來的風險,並且只排除你確信不是惡意的檔案。

重要事項

如果你想並行運行多個安全解決方案,請參閱 效能、設定與支援的考量。

你可能已經為已納入 適用於端點的 Microsoft Defender 的裝置設定了雙向安全性排除。 如果你仍需設定相互排除以避免衝突,請參閱「新增 適用於端點的 Microsoft Defender」到你現有解決方案的排除清單中。

支援的排除類型

Linux 版的 Defender for Endpoint 支援以下排除類型:

  • 檔案副檔名:裝置上所有指定副檔名的檔案。

    • 全域排除時檔案副檔名排除功能無法使用。
    • 範例: .test
  • 檔案:以完整路徑識別的特定檔案。

    • 對於全域排除,檔案路徑必須存在,才能新增或移除排除項目。
    • 例如:
      • /var/log/test.log
      • /var/log/*.log
      • /var/log/install.?.log
  • 資料夾:遞迴存取指定資料夾內的所有檔案。

    • 例如:
      • /var/log/
      • /var/*/
  • 程序:特定程序,以其完整路徑或檔案名稱識別,以及該程序開啟的所有檔案。

    • 針對防毒排除,你可以指定完整路徑或檔案名稱。 我們建議使用完整路徑。
    • 對於全域排除,只排除對系統可靠性和安全所需的部分。 驗證程序是已知且可信的,指定其完整路徑,並確認它始終從該受信任路徑開始。
    • 例如:
      • /bin/cat
      • cat
      • c?t

重要事項

排除路徑必須是硬連結,而非符號連結。 要檢查路徑是否為符號連結,執行 file <path-name>。

支援的檔案、資料夾及程序排除的萬用字元

您可以在定義防毒檔案、資料夾和處理程序排除項目時,使用下列萬用字元模式。 全域排除不支援萬用字元。

  • 星號(*):匹配任意數量的字元,包括無字元。 如果這個通配符在路徑末端未被使用,則只會替換一個資料夾。

    • 對於防毒排除,路徑末尾的 * 通配符會匹配該通行符父目錄下的所有檔案和子目錄。
    • 例如:
      • /var/*/tmp:
        • 包含:/var/def/tmp 和 /var/abc/tmp 及其子資料夾中的任何檔案。
        • 不包含: /var/abc/log 或 /var/def/log。
      • /var/*/:
        • 包含:子目錄中的檔案,例如: /var/abc/
        • 不包含:直接位於 /var 中的檔案。
  • 問號(?):可匹配任何單一字元。

    • 範例: file?.log
      • 包含:file1.log和file2.log。
      • 不包括:file123.log。

設定排除項目

請使用以下其中一種方法來設定排除項目。

使用受管理的 JSON 來設定排除事項

在企業環境中,使用組態管理工具如 Puppet 或 Ansible 來部署名為 mdatp_managed.json/etc/opt/microsoft/mdatp/managed/的設定檔。 欲了解更多資訊,請參閱 Linux 上 Defender for Endpoint 設定偏好設定。

以下 mdatp_managed.json 範例說明如何設定檔案、資料夾、副檔名和程序的防毒與全域排除:

{
   "exclusionSettings":{
     "exclusions":[
        {
           "$type":"excludedPath",
           "isDirectory":true,
           "path":"/home/*/git<EXAMPLE DO NOT USE>",
           "scopes": [
              "epp"
           ]
        },
        {
           "$type":"excludedPath",
           "isDirectory":true,
           "path":"/run<EXAMPLE DO NOT USE>",
           "scopes": [
              "global"
           ]
        },
        {
           "$type":"excludedPath",
           "isDirectory":false,
           "path":"/var/log/system.log<EXAMPLE DO NOT USE><EXCLUDED IN ALL SCENARIOS>",
           "scopes": [
              "epp", "global"
           ]
        },
        {
           "$type":"excludedFileExtension",
           "extension":".pdf<EXAMPLE DO NOT USE>",
           "scopes": [
              "epp"
           ]
        },
        {
           "$type":"excludedFileName",
           "name":"/bin/cat<EXAMPLE DO NOT USE><NO SCOPE PROVIDED - GLOBAL CONSIDERED>"
        }
     ],
     "mergePolicy":"admin_only"
   }
}

使用 Defender 以管理端點安全設定來設定排除事項

注意事項

在開始之前,請先閱讀 Defender for Endpoint Security 的管理設定前置條件。

你可以使用 Microsoft Intune 管理中心或 Microsoft Defender 入口網站,將排除事項作為端點安全政策管理,並將政策指派給 Microsoft Entra 群組。 如果你是第一次使用安全設定管理,請完成以下步驟:

步驟 1:啟用 Linux 的安全設定管理

  1. 請前往 Microsoft Defender 入口網站https://security.microsoft.com/securitysettings/endpoints/configuration_management的端點>配置管理>強制範圍頁面。
  2. 在 執行範圍 頁面,請在 啟用配置管理 區塊中確認以下設定:
    • 選擇 Linux 裝置 ,然後選擇以下其中一個值:
      • 選擇 在標籤裝置 上測試對特定裝置的安全設定管理。 把標籤加 MDE-Management 到每個測試裝置上。 關於說明及其他標籤方法,請參見 「建立與管理裝置標籤」。
      • 選擇 「所有裝置 」以註冊所有符合資格的 Linux 裝置。

大多數裝置會在幾分鐘內註冊並套用指定的政策,雖然有些裝置可能需要長達 24 小時。

步驟 2:建立 Microsoft Entra 裝置群組

建立一個基於 Linux 作業系統類型的動態 Microsoft Entra 裝置群組。 動態會員會自動加入匹配的裝置,因此你不需要手動維持群組成員資格。 欲了解更多資訊,請參閱建立 Microsoft Entra 群組以管理安全設定。

步驟 3:建立 Linux 排除政策

詳細說明請參閱 「建立端點安全政策 」(連結在新分頁開啟)。

當您在 Defender 入口網站 https://security.microsoft.com/policy-inventory?osPlatform=Linux的端點安全政策頁面的 Linux 政策標籤建立政策時,請使用以下特定設定:

  • 選擇平台:選擇 Linux。
  • 選擇範本:
    • 若要選擇全域防毒及 EDR 排除,請選擇 Microsoft Defender 全域排除(AV+EDR)。
    • 關於防毒排除,請選擇 Microsoft Defender 防毒排除選項。

在政策建立精靈中,請使用以下設定:

  • 設定設定 標籤:用這個設定檔設定你想管理的設定。
  • 指派索引標籤:指派群組的限制適用於透過 Defender for Endpoint 的安全性設定管理所管理的裝置。 詳情請參閱 「指派」步驟。

使用命令列設定排除項目

要查看可用的子指令及管理排除選項,請執行以下 mdatp exclusion 指令:

mdatp exclusion

命令語法

以下語法總結了可用的排除子指令、選項與值:

mdatp exclusion {extension {add|remove} --name <extension> | file {add|remove} --path <file-path> [--scope {epp|global}] | folder {add|remove} --path <folder-path> [--scope {epp|global}] | process {add|remove} {--path <process-path> [--scope {epp|global}] | --name <process-name> [--scope epp]} | list}

注意事項

移除排除項目時,請指定你加入時使用的範圍。

選項的預設值 --scope 為 epp,因此僅指定排除 global 選項。

在引入這個 --scope 選項之前,所有命令列排除都使用 epp scope。 這些現有的排除條件仍持續使用 epp。

當排除值包含萬用字元時,請用雙引號包圍該值。 此語法可防止 Shell 在 mdatp 處理萬用字元之前,先展開該萬用字元。

新增或移除檔案副檔名排除項目

檔案副檔名排除僅支援防毒(epp)範圍。 下列指令會新增及移除 .txt 擴充功能排除項目:

mdatp exclusion extension add --name .txt

mdatp exclusion extension remove --name .txt

新增或移除檔案排除項目

檔案必須先存在,才能使用 global 範圍新增或移除排除項目。

以下指令可新增和移除防毒軟體(epp)的檔案排除項目:

mdatp exclusion file add --path /var/log/dummy.log

mdatp exclusion file remove --path /var/log/dummy.log

以下指令可新增或移除全域檔案排除:

mdatp exclusion file add --path /var/log/dummy.log --scope global

mdatp exclusion file remove --path /var/log/dummy.log --scope global

新增或移除資料夾排除項目

以下指令用於新增與移除防毒軟體(epp)資料夾排除功能:

mdatp exclusion folder add --path /var/log/

mdatp exclusion folder remove --path /var/log/

以下指令可新增或移除全域資料夾排除:

mdatp exclusion folder add --path /var/log/ --scope global

mdatp exclusion folder remove --path /var/log/ --scope global

對每個你想排除的資料夾執行一次指令。 你可以把不同的範圍指派給不同的資料夾。

防毒資料夾排除功能支援萬用字元。 以下指令會排除 */var/*/tmp/* 下的路徑,但不會排除同層資料夾,例如 */var/this-subfolder/log*:

mdatp exclusion folder add --path "/var/*/tmp"

若要排除 /var/ 下的所有路徑,請使用下列任一指令:

mdatp exclusion folder add --path "/var/"

mdatp exclusion folder add --path "/var/*/"

新增或移除流程排除

對於全域處理程序排除,請使用 --path 指定完整的處理程序路徑。 以下指令可新增或移除全域程序排除:

mdatp exclusion process add --path /usr/bin/cat --scope global

mdatp exclusion process remove --path /usr/bin/cat  --scope global

對於防毒軟體(epp)程序排除,你可以指定程序名稱或完整路徑。 以下指令可依名稱新增或移除防毒軟體處理程序排除項目:

mdatp exclusion process add --name cat

mdatp exclusion process remove --name cat

對每個你想排除的程序執行一次指令。 你可以為不同的流程指派不同的範圍。

用 EICAR 測試檔案驗證排除事項

EICAR 測試檔案是一個小巧且無害的文字檔,內含一個被防毒軟體識別為惡意軟體的標準字串。 你可以用它來安全確認排除是否有效,而不必使用真正的惡意軟體。 Linux 版的 Defender for Endpoint 是透過檔案內容來偵測檔案,而非檔名。

在測試排除項目前,請確認即時保護是否已啟用。 執行下列指令,並確認其回傳 true:

mdatp health --field real_time_protection_enabled

建立 EICAR 測試檔案時,使其檔名、副檔名或位置與你想驗證的排除條款相符:

  • 使用特定檔案名稱或在特定資料夾中建立檔案,以驗證檔案及資料夾的排除。
  • 使用任何包含排除副檔名的檔案名稱來驗證檔案副名排除。

如果 Defender for Endpoint 偵測到該檔案,排除機制就無法生效。 如果檔案存在且 Defender for Endpoint 沒有偵測到,排除功能就會有效。

這些步驟旨在驗證檔案、資料夾及檔案副檔名的排除。 他們沒有提供一般性的程序排除測試,這取決於建立或開啟檔案的程序。

請使用以下方法之一建立符合排除條款的EICAR測試檔案:

  • 有網路連線時:請使用以下 curl 語法下載測試檔案:

    curl -o <file-name-or-path> https://secure.eicar.org/eicar.com.txt
    

    例如,如果您排除了 .testing 副檔名,請下載具有該副檔名的測試檔案:

    curl -o test.testing https://secure.eicar.org/eicar.com.txt
    

    要測試資料夾排除,請在該資料夾執行指令。

  • 沒有網路連線:在本地建立 EICAR 測試檔案。 例如,將檔案名稱或路徑改 test.txt 成符合你排除名單的選項:

    echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' > test.txt
    

以下文章提供更多關於在 Linux 上配置與管理 Defender for Endpoint 的資訊: