本文檔概述了使用Microsoft Intune部署思科安全終端或安全客戶端的過程。
本文檔介紹從安全終結點/安全客戶端安裝程式建立Microsoft Intune支援的應用,然後使用Microsoft Intune管理中心進行部署的步驟。具體來說,該過程包括通過Intune Win32內容準備工具將思科安全終端安裝程式打包為Win32應用程式,以及通過Intune配置和部署應用。
根據地區不同,登入到您各自的安全終端門戶。
2.定位至「管理」標籤,然後選擇「下載聯結器」。
3.選擇希望聯結器註冊到的安全終結點組。

4.選擇「download」,EXE安裝程式在本地下載:

Win32內容準備工具是Microsoft Intune提供的實用工具,可幫助IT管理員準備Win32應用程式(用於傳統的Windows案頭應用程式)以便通過Microsoft Intune進行部署。該工具將Win32應用程式安裝程式(如.exe、.msi和相關檔案)轉換為.intunewin檔案格式,這是通過Intune部署這些應用程式所必需的。
準備Intune檔案:
2.執行IntuneWinAppUtil.exe。
3.在下一步中,將目錄更改為包含步驟1中下載的Cisco Secure Endpoint執行檔以及安裝powershell指令碼(Install-CiscoSecureEndpoint.ps1)的資料夾。
4.指定安裝檔案的指令碼檔案名Install-CiscoSecureEndpoint.ps1。
5.在下一步中,指定必須生成Intunewin檔案的資料夾。
6.當系統提示指定目錄時,輸入N。
7. Intunewin檔案按螢幕截圖所示生成:

2.導航到Microsoft Intune管理中心中的Windows應用,然後選擇應用型別 — Win32,然後選擇螢幕快照中描述的以下兩個操作:

3.在下一步中,上傳在步驟2中建立的安全終端Intunewin檔案,然後選擇OK。

4.選擇確定後,輸入螢幕截圖中顯示的資訊。每個頁籤上的可選欄位可以留空,然後按一下下一步。

5.執行Install命令:
%windir%\SysNative\WindowsPowershell\v1.0\powershell.exe -noprofile -executionpolicy Bypass -file .\Install-CiscoSecureEndpoint.ps1
附註:顯示的代碼是一個示例,任何代碼都可以用作此安裝程式的安裝命令。
6.輸入Uninstall作為n/a,所需的安裝時間為60(可選)。 將Allow available uninstall設定為No,然後選擇Install behavior as System。在選擇下一步之前,新增任何其他可選詳細資訊。

7.在「要求」頁籤上,選擇「否」。允許在所有系統上安裝此應用,並選擇最低作業系統。如果需要,請填寫可選欄位,然後選擇下一步。

8.在Detection Rules頁籤上,rules format下拉選單提供兩個選項;Manually configure detection rules和Use a custom detection script。可根據部署要求選擇任一選項。
9.選擇「手動配置檢測規則」時,您可以定義規則型別(如MSI、檔案或登錄檔)以檢測應用程式的存在。在本文檔中,已選擇替代選項Use a custom detection script。
10.名為Confirm-CSEInstall.ps1的PowerShell指令碼用於驗證思科安全終結點的安裝是否成功(該指令碼列於本文檔底部)。

11.選擇Next以繼續。
附註:可以專門為此部署過程建立自定義檢測指令碼,以符合您的環境和檢測標準。
12.(接下來的幾個頁籤是可選的)無需配置依賴關係;將應用程式分配到所需的組,然後選擇複查+建立。

2.建立新部署,然後選擇完全安裝程式或網路安裝程式,具體取決於部署型別。

3. csc-deploy-full-Intune Test.exe已下載,如下螢幕截圖所示:



這將完成使用Intune部署思科安全終結點的流程。
注意:此安裝指令碼必須使用Intune轉換器與安裝程式結合使用,並且使用本指南的步驟3中提到的命令列中引用的PS指令碼的確切名稱並放置在Intune中的以下位置:
新增應用>程式>安裝命令。
附註:下一部分中的指令碼是實驗室環境中用於建立本指南的演示的操作示例。經過適當的測試後,您可以按原樣使用它們,也可以根據需要進行修改。
[CmdletBinding()]
param ()
$cse_exe =
$version =
if ($PSCommandPath -eq $null) {
function GetPSCommandPath() {
return $MyInvocation.PSCommandPath;
}
$PSCommandPath = GetPSCommandPath
}
$script = [pscustomobject]@{
"Path" = Split-Path $PSCommandPath -Parent
"Name" = Split-Path $PSCommandPath -Leaf
}
Set-Location -Path $script.Path
$cse_installer = [IO.Path]::Combine($script.Path, $cse_exe)
$csc_installer_args = "/R /S"
<#
Cannot use -wait for 'Cisco Secure Endpoint' and therefore cannot get the exit code to return.
Using -wait, returns varied results, instead use Get-Process and while loop to wait for installation to complete.
#>
$install = Start-Process -WorkingDirectory "$($script.Path)" -FilePath "${cse_installer}" -ArgumentList "${csc_installer_args}" -PassThru -NoNewWindow
while (Get-Process "$($cse_exe -replace '.exe', '')" -ErrorAction SilentlyContinue)
{
Start-Sleep -Seconds 10
}
$exeName =
$exePath = Join-Path -Path $PSScriptRoot -ChildPath $exeName
if (-not (Test-Path $exePath)) {
Write-Error "Executable not found: $exePath"
exit 1
}
# Use silent mode – the most commonly documented switch for Cisco XDR / Secure Client installers
$arguments = "-q" # or try "--quiet" if -q fails in your specific build
try {
$process = Start-Process -FilePath $exePath -ArgumentList $arguments -NoNewWindow -Wait -PassThru
if ($process.ExitCode -eq 0) {
Write-Output "Cisco XDR installation completed successfully (exit code 0)."
exit 0
} else {
Write-Error "Installation failed with exit code: $($process.ExitCode)"
exit $process.ExitCode
}
}
catch {
Write-Error "Exception during installation: $_"
exit 1
}
提示:可選:您可以在Intune管理門戶中使用手動配置的檢測規則。
[CmdletBinding()]
param ()
$version =
<#
https://learn.microsoft.com/en-us/intune/intune-service/apps/apps-win32-add#step-4-detection-rules
The app gets detected when the script both returns a 0 value exit code and writes a string value to STDOUT
The Intune agent checks the results from the script. It reads the values written by the script to the STDOUT stream,
the standard error (STDERR) stream, and the exit code. If the script exits with a nonzero value, the script fails and
the application detection status isn't installed. If the exit code is zero and STDOUT has data, the application
detection status is installed.
#>
$cse = Get-ItemProperty HKLM:\Software\Microsoft\Windows\CurrentVersion\Uninstall\*, HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* -ErrorAction SilentlyContinue | Where-Object { $_ -like "*Immunet Protect*" } | Where-Object { $_.DisplayName -like "*Cisco Secure Endpoint*" }
if ($cse | Where-Object { [System.Version] $_.DisplayVersion -ge [System.Version] "${version}" })
{
Write-Host "Installed"
exit 0
}
exit 1
附註:之前的指令碼僅用於教育目的,不受Cisco TAC支援。每個環境可能因不同的規則或策略而異,因此有必要執行適當的測試。對第三方部署工具進行故障排除被視為最大努力,必須從檢視門戶或託管工作站上的Intune日誌開始。
| 修訂 | 發佈日期 | 意見 |
|---|---|---|
2.0 |
25-Aug-2026
|
已更新標題、拼寫、語法、插入水平線以分隔各個部分的可讀性、已更新的備用文本和CCW警報。 |
1.0 |
12-Aug-2025
|
初始版本 |