Defender 部署工具為 Linux 裝置上的 適用於端點的 Microsoft Defender 提供高效且使用者友善的入門流程。 它可讓使用者使用可從 Microsoft Defender 入口網站下載的單一套件,安裝適用於端點的 Microsoft Defender 並完成上線設定。 這樣就不用先用安裝腳本/CLI 指令安裝 Defender,然後再用入口網站的入門套件單獨安裝裝置。
這項防禦部署工具支援透過第三方工具如 Chef、Ansible、Puppet 和 SaltStack 進行手動及批量導入。 該工具支援多項參數,讓你能自訂大規模部署,讓能在不同環境中量身打造安裝。
前置條件與系統需求
在開始之前,請參考《Linux 上 適用於端點的 Microsoft Defender 的先決條件》,了解前置條件與系統需求。 此外,還需符合以下要求:
- 對
msdefender.download.prss.microsoft.com的 443 連接埠 HTTPS 輸出存取。 除了 精簡連線 所使用的核心 Defender for Endpoint 服務端點外,還需要此部署工具下載端點。 在開始部署前,先執行 連線測試,檢查所需的網址是否可存取。 - 端點必須安裝 wget 或 curl 。
部署工具會強制執行以下一組先決條件檢查,若未達成,將中止部署程序:
- 裝置記憶體:超過 1 GB
- 裝置可用磁碟空間:超過 2GB
- 裝置上的 Glibc 函式庫版本:2.17 以上更新
- Defender 組建版本:必須受支援且未過期。 要查詢產品有效期限,請執行指令
-mdatp health。
提示
在執行部署工具將 Defender 導入 Linux 伺服器之前,建議先啟動該工具,並設定--pre-req協助識別並修正可能影響部署的問題。
部署:逐步指南
請從 Defender 入口網站依照以下步驟下載 Defender 部署工具。
請前往設定>端點>>裝置管理>>上線。
在步驟 1 下拉選單中,選擇 Linux 作為作業系統。
在「下載並套用入門套件或檔案」中,選擇 Defender 部署工具下的「下載套件」按鈕。
注意事項
由於這個套件是安裝並上線代理的,所以它是租戶專屬的套件,不能跨租戶使用。
從命令提示字元擷取壓縮檔內容:
unzip GatewayLinuxDefenderDeploymentTool.zipArchive: GatewayLinuxDefenderDeploymentTool.zip inflating: defender_deployment_tool.sh授予腳本執行檔權限。
chmod +x defender_deployment_tool.sh請使用下列命令執行指令碼,以在您的端點裝置上安裝並上線設定 適用於端點的 Microsoft Defender。
sudo bash defender_deployment_tool.sh此指令會從生產通道安裝最新的代理程式版本,並將裝置接入 Defender 入口網站。 裝置可能要等 5 到 20 分鐘才會出現在 裝置清單中。
注意事項
如果您已設定系統層級的 Proxy 來重新導向適用於端點的 Defender 流量,請確認您也已使用 Defender 部署工具設定該 Proxy。 請參閱命令列說明 (——幫助) 了解可用的代理選項。
你可以根據需求,將參數傳給工具,進一步自訂部署方式。 請使用選項
--help查看所有可用選項:./defender_deployment_tool.sh --help下表提供了適用於有用情境的指令範例。
案例 命令 檢查是否有未達成的先修條件 sudo ./defender_deployment_tool.sh --pre-req執行連接測試 sudo ./defender_deployment_tool.sh --connectivity-test部署到自訂地點 sudo ./defender_deployment_tool.sh --install-path /usr/microsoft/從本地設定的套件儲存庫部署 sudo ./defender_deployment_tool.sh --use-local-repo
此選項無法與--channel或--clean合併。從特定通道部署 sudo ./defender_deployment_tool.sh --channel insiders-slow使用代理部署 sudo ./defender_deployment_tool.sh --http-proxy <http://username:password@proxy_host:proxy_port>部署特定代理版本 sudo ./defender_deployment_tool.sh --mdatp 101.25042.0003 --channel prod升級到特定代理版本 sudo ./defender_deployment_tool.sh --upgrade --mdatp 101.24082.0004降級至特定代理版本 sudo ./defender_deployment_tool.sh --downgrade --mdatp 101.24082.0004解除安裝 Defender sudo ./defender_deployment_tool.sh --remove如需詳細資訊,請參閱 在 Linux 上解除上線或解除安裝適用於端點的 Microsoft Defender只有在已經安裝 Defender 的情況下才會內建 sudo ./defender_deployment_tool.sh --only-onboard離板防守者 sudo ./defender_deployment_tool.sh --offboard MicrosoftDefenderATPOffboardingLinuxServer.py
(注意:在使用 --offboard 選項之前,您必須先從 Defender 入口網站中的 [系統 > 設定 > 端點 > 解除上線] 下載最新的解除上線指令碼。) 如需其他解除上線的方法,請參閱 在 Linux 上讓 適用於端點的 Microsoft Defender 解除上線或將其解除安裝。
在 Microsoft Defender 入口網站監控部署進度
當 Defender 部署工具執行時,會在每個部署步驟的開始和結束時,向 Defender 入口發送進度事件。 這些事件可讓您無須登入每一台裝置,即可追蹤所有裝置的部署狀態,並精確找出部署失敗時停止在哪一個步驟。
在 裝置清單 中檢查某裝置的註冊狀態。 要查詢全艦隊的入職狀態,請使用進階搜尋查詢。 要查看逐步進度,請參閱裝置時間軸。 到 裝置清單,選擇裝置,然後選擇 時間軸。
要篩選時間軸上的部署事件,請輸入 DefenderDeployment 時間軸搜尋框。 每個事件都讀取 Defender deployment tool: <step> succeeded 或 Defender deployment tool: <step> failed,並包含工具報告該步驟的額外細節。 以下截圖顯示了一次成功的安裝執行。
部署時間表
成功的安裝與上載運行會產生以下事件序列:
| Order | 步驟(ActionName) |
Description |
|---|---|---|
| 1 | Start | 部署工具開始運作。 活動內容包括工具版本及操作流程:安裝、升級、降級、移除或離板。 |
| 2 | Download | 該工具會從 Microsoft 下載安裝程式腳本。 如果你提供預先準備好的腳本並有這個 --script 選項,這個步驟可以跳過。 |
| 3 | 先決條件檢查 | 該工具會驗證系統需求,例如記憶體、磁碟空間、glibc 及核心功能。 |
| 4 | 安裝 | 該工具安裝 適用於端點的 Microsoft Defender 套件。 事件包含已安裝的代理程式版本。 |
| 5 | 感測器初始化 | 客服人員完成上線程序,感測器已取得執照並啟用。 |
| 6 | 序列補全 | 完整的部署程序結束。 這個步驟一律是某次執行的最後一個事件。 |
移除、升級或下架執行只會包含適用的步驟。 如果某一步失敗,工具會針對該步驟發送失敗事件,並附上退出碼和錯誤說明,說明錯誤原因。
使用進階搜尋查詢部署狀態
要檢查特定裝置的事件,請在 進階狩獵中執行以下查詢。 將 <DeviceId> 替換為目標裝置識別碼。 要找到裝置 ID,請前往 裝置庫存,或在該裝置上執行 mdatp health --field edr_device_id 。
DeviceEvents
| where Timestamp > ago(1d)
| where ActionType == "DefenderDeploymentToolEvent"
| where DeviceId == "<DeviceId>"
| extend Details = parse_json(AdditionalFields)
| project
Timestamp,
DeviceName,
Step = tostring(Details.ActionName),
Succeeded = tobool(Details.IsSuccess),
ExitCode = toint(Details.ExitCode),
Data = tostring(Details.Data),
ErrorDescription = tostring(Details.ErrorDescription)
| sort by Timestamp asc
要取得所有裝置的部署狀態摘要,請執行以下查詢。 它會回傳每個裝置在過去 30 天內回報的最新步驟,並將每個裝置分類為 已啟動、啟動 失敗或仍在登入中:
DeviceEvents
| where Timestamp > ago(30d)
| where ActionType == "DefenderDeploymentToolEvent"
| extend Details = parse_json(AdditionalFields)
| extend Step = tostring(Details.ActionName), Succeeded = tobool(Details.IsSuccess)
| summarize arg_max(Timestamp, DeviceName, Step, Succeeded) by DeviceId
| extend Status = case(
Step == "Sequence completion" and Succeeded, "Onboarded",
Step == "Sequence completion" and not(Succeeded), "Onboarding Failed",
not(Succeeded), strcat("Failed at: ", Step),
"Onboarding")
| project DeviceId, DeviceName, LastEvent = Timestamp, LastStep = Step, Status
驗證 AV/EDR 功能
在 Microsoft Defender 入口網站中,打開裝置清單。 裝置可能要等 5 到 20 分鐘才會出現在傳送門裡。
執行防毒軟體偵測測試,確認裝置已正確上線並回報給服務單位。 對新上線的裝置執行以下步驟:
確保即時保護已啟用(執行下列命令後,若結果為 true,則表示已啟用):
mdatp health --field real_time_protection_enabled如果沒有啟用,請執行以下指令:
mdatp config real-time-protection --value enabled打開終端機視窗並執行以下指令以執行偵測測試:
curl -o /tmp/eicar.com.txt https://secure.eicar.org/eicar.com.txt你可以使用以下任一指令對壓縮檔執行更多偵測測試:
curl -o /tmp/eicar_com.zip https://secure.eicar.org/eicar_com.zip curl -o /tmp/eicarcom2.zip https://secure.eicar.org/eicarcom2.zip這些檔案應該會被 Defender for Endpoint 在 Linux 上隔離。 請使用以下指令列出所有偵測到的威脅:
mdatp threat list
執行 EDR 偵測測試並模擬偵測,以確認裝置已正確上線並向服務單位報告。 對新上線的裝置執行以下步驟:
下載並將 指令碼檔案 解壓縮至已上線的 Linux 伺服器。
授予腳本執行檔權限:
chmod +x mde_linux_edr_diy.sh執行下列命令:
./mde_linux_edr_diy.sh幾分鐘後,Microsoft Defender 全面偵測回應 中應會觸發偵測。
檢查警示細節、機器時間軸,並執行你平常的調查步驟。
為部署問題進行疑難排解
查看部署錯誤日誌:
-
/tmp/defender_deployment_tool.log記錄部署工具的活動。 -
/tmp/defender_deployment_tool_telemetry.log記錄工具傳送至 Microsoft Defender 入口網站的進度事件。
-
如果你遇到任何連線問題,請執行此指令來進行連線測試:
sudo ./defender_deployment_tool.sh --connectivity-test執行可能需要一些時間,因為它會檢查 Defender 需要的每個 URL,並發現問題(如果有的話)。
執行該裝置的 進階搜尋查詢 ,尋找最近事件,其中
Succeeded是false。 欄位Step識別失敗步驟,ErrorDescription與ExitCode欄位解釋原因:如果部署在 下載 步驟失敗,安裝程式腳本就無法被下載。 確認裝置已安裝
curl或wget,且允許對 Microsoft 下載端點進行對外 HTTPS 連線。若部署在前 置檢查 步驟失敗,表示裝置未達到最低系統需求。 該
ErrorDescription欄位列出失敗的檢查,中間以|分隔。 非阻斷失敗帶有(non_blocking)前綴,且不會中止部署。如果部署在 安裝 步驟失敗,套件管理器就無法安裝代理程式。 常見原因包括套件儲存庫設定錯誤、缺少相依性,或所選
mdatp通道中無法提供的請求版本。如果部署在 感測器初始化 階段失敗,代表代理安裝了但未在預期時間內完成上線。 在裝置上執行
mdatp health,檢查licensed、healthy和org_id欄位。如果在入口網站中看不到某裝置的部署事件,請檢查該裝置上的
/tmp/defender_deployment_tool_telemetry.log,以確認該工具是否有傳送這些事件。
如果這還是無法解決問題,請試著檢查以下步驟:
- 記錄安裝問題。
- 安裝問題。
- 適用於端點的 Defender 代理程式健全狀態問題。
- 針對效能問題進行疑難排解 (機器翻譯)。
- 排查雲端連線問題。
從某個通道完成部署後,如何在各通道之間切換
Linux 上的 Defender for Endpoint 可透過下列其中一種管道進行部署:
- insiders-fast
- insiders-slow
- prod (正式版)
這些頻道各自對應一個 Linux 軟體倉庫。 頻道決定了你裝置所提供的更新類型與頻率。 位於 insiders-fast 的裝置會最先收到更新與新功能,之後才是 insiders-slow,最後則是 prod。
依預設,部署工具會將您的裝置設定為使用 prod 通道。 你可以使用本文件中描述的設定選項,從不同的通道部署。
為了預覽新功能並提供早期意見回饋,建議您將企業中的部分裝置設定為使用 insiders-fast 或 insiders-slow。 如果您已透過某個通道在 Linux 上部署 Defender for Endpoint,且想要切換到其他通道(例如從 prod 切換到 insiders-fast),則必須先移除目前的通道,接著刪除目前通道的存放庫,最後再從新通道安裝 Defender,如下列範例所示,其中通道會從 insiders-fast 變更為 prod:
移除 Linux 上 Defender for Endpoint 的內部快速通道版本。
sudo ./defender_deployment_tool.sh --remove --channel insiders-fast從 Linux insiders-fast 存放庫中刪除 Defender for Endpoint。
sudo ./defender_deployment_tool.sh --clean --channel insiders-fast使用正式版通道,安裝 Linux 版適用於端點的 Microsoft Defender。
sudo ./defender_deployment_tool.sh --channel prod
相關內容
- Linux 上 適用於端點的 Microsoft Defender 的必要條件
- 啟用將 適用於端點的 Microsoft Defender 部署到自訂位置
- 使用基於安裝程式腳本的部署,在 Linux 上部署 適用於端點的 Microsoft Defender
- 在 Linux 上部署 適用於端點的 Microsoft Defender with Ansible
- 使用 Chef 在 Linux 上部署適用於端點的 Microsoft Defender
- 在 Linux 上部署 適用於端點的 Microsoft Defender with Puppet
- 使用 SaltStack 在 Linux 上部署適用於端點的 Microsoft Defender
- 手動在 Linux 上部署 適用於端點的 Microsoft Defender
- 使用黃金映像檔部署 Linux 版適用於端點的 Microsoft Defender
- 用 Defender for Endpoint 將非 Azure 的機器連接到 適用於雲端的 Microsoft Defender, (使用 適用於雲端的 Defender 直接導入)
- 適用於端點的 Microsoft Defender on Linux for SAP 的部署指引