您可以使用各種工具和方法在 Linux 上部署適用於端點的 Defender 。 本文說明如何使用 Puppet 在 Linux 上部署適用於端點的 Defender。 若要使用其他方法,請參閱 相關內容區段。
重要事項
如果您想要並存執行多個安全性解決方案,請參閱 效能、組態和支援的考量。
您可能已經為上線至 適用於端點的 Microsoft Defender 的裝置設定相互安全性排除。 如果您仍然需要設定相互排除以避免衝突,請參閱 將適用於端點的 Microsoft Defender新增至現有解決方案的排除清單。
重要事項
本文包含第三方工具的相關資訊。 提供此功能是為了協助完成整合案例,不過,Microsoft 不提供協力廠商工具的疑難排解支援。
請聯絡第三方廠商以取得支援。
必要條件和系統需求
開始之前,請參閱 Linux 上適用於端點的 Defender 必要條件 ,以取得必要條件和系統需求的描述。
此外,對於 Puppet 部署,您需要熟悉 Puppet 管理任務、設定 Puppet,並知道如何部署套件。 Puppet 有很多方法可以完成相同的任務。 這些指示假設支援的 Puppet 模組可用,例如 apt 以協助部署套件。 您的組織可能會使用不同的工作流程。 如需詳細資訊,請參閱 Puppet 文件。
下載上線套件
從 Microsoft Defender 入口網站下載上線套件。
警告
不支援重新封裝適用於端點的 Defender 安裝套件案例。 這樣做可能會對產品的完整性產生負面影響並導致不利結果,包括但不限於觸發篡改警報和無法應用的更新。
在 Microsoft Defender 入口網站中,移至 [設定>端點]> [裝置管理>] 上線。
在第一個下拉式功能表中,選取 Linux Server 作為作業系統。 在第二個下拉式功能表中,選取 [您偏好的 Linux 組態管理工具 ] 作為部署方法。
選取 [下載上線套件]。 將檔案儲存為
WindowsDefenderATPOnboardingPackage.zip。
提取存檔的內容。
unzip WindowsDefenderATPOnboardingPackage.zipArchive: WindowsDefenderATPOnboardingPackage.zip inflating: mdatp_onboard.json
建立目錄結構
您必須建立目錄結構,才能在 Linux 上將適用於端點的 Defender 部署至 Puppet 伺服器所管理的裝置。 此範例會使用aptyumrepo可從 和 取得puppetlabs的模組,並假設模組已安裝在您的 Puppet 伺服器上。
如果您的 Puppet 安裝,請在 modules 資料夾下建立資料夾
install_mdatp/files和install_mdatp/manifests。 modules 資料夾通常位於/etc/puppetlabs/code/environments/production/modulesPuppet 伺服器上。將先前建立的檔案複製
mdatp_onboard.json到資料夾中install_mdatp/files。建立包含
init.pp部署指示的檔案:pwd/etc/puppetlabs/code/environments/production/modulestree install_mdatpinstall_mdatp ├── files │ └── mdatp_onboard.json └── manifests └── init.pp
建立 Puppet 資訊清單
建立資訊清單檔案有兩種方式:
- 使用安裝程式腳本;或
- 手動設定您的儲存庫。
建立資訊清單,以使用安裝程式腳本部署適用於端點的 Defender
- 下載安裝程式 bash 腳本。 從 Microsoft GitHub 存放庫提取 安裝程式 bash 腳本 ,或使用下列命令下載它。
wget https://raw.githubusercontent.com/microsoft/mdatp-xplat/refs/heads/master/linux/installation/mde_installer.sh /etc/puppetlabs/code/environments/production/modules/install_mdatp/files/
- 將下列內容
install_mdatp/manifests/init.pp新增至檔案。 您也可以直接從 GitHub 下載檔案
# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.
class install_mdatp (
$channel = 'prod',
) {
# Ensure that the directory /tmp/mde_install exists
file { '/tmp/mde_install':
ensure => directory,
mode => '0755',
}
# Copy the installation script to the destination
file { '/tmp/mde_install/mde_installer.sh':
ensure => file,
source => 'puppet:///modules/install_mdatp/mde_installer.sh',
mode => '0777',
}
# Copy the onboarding script to the destination
file { '/tmp/mde_install/mdatp_onboard.json':
ensure => file,
source => 'puppet:///modules/install_mdatp/mdatp_onboard.json',
mode => '0777',
}
# Install MDE on the host using an external script
exec { 'install_mde':
command => "/tmp/mde_install/mde_installer.sh --install --channel ${channel} --onboard /tmp/mde_install/mdatp_onboard.json",
path => '/bin:/usr/bin',
user => 'root',
logoutput => true,
require => File['/tmp/mde_install/mde_installer.sh', '/tmp/mde_install/mdatp_onboard.json'], # Ensure the script is copied before running the installer
}
}
注意事項
安裝程式腳本也支援其他參數,例如通道、即時保護、版本、自訂位置安裝等。若要從可用選項清單中選取,請查看說明: ./mde_installer.sh --help
建立資訊清單,以手動設定存放庫來部署適用於端點的 Defender
將下列內容 install_mdatp/manifests/init.pp 新增至檔案。 您也可以從 GitHub 下載。
# Puppet manifest to install Microsoft Defender for Endpoint on Linux.
# @param channel The release channel based on your environment, insider-fast or prod.
class install_mdatp::configure_debian_repo (
String $channel,
String $distro,
String $version ) {
# Configure the APT repository for Debian-based systems
$release = $channel ? {
'prod' => $facts['os']['distro']['codename'],
default => $channel
}
apt::source { 'microsoftpackages':
location => "https://packages.microsoft.com/${distro}/${version}/prod",
release => $release,
repos => 'main',
key => {
'id' => 'BC528686B50D79E339D3721CEB3E94ADBE1229CF',
'server' => 'keyserver.ubuntu.com',
},
}
}
class install_mdatp::configure_redhat_repo (
String $channel,
String $distro,
String $version) {
# Configure the Yum repository for RedHat-based systems
yumrepo { 'microsoftpackages':
baseurl => "https://packages.microsoft.com/rhel/${version}/prod",
descr => 'packages-microsoft-com-prod',
enabled => 1,
gpgcheck => 1,
gpgkey => 'https://packages.microsoft.com/keys/microsoft.asc',
}
}
class install_mdatp::install {
# Common configurations for both Debian and RedHat
file { ['/etc/opt', '/etc/opt/microsoft', '/etc/opt/microsoft/mdatp']:
ensure => directory,
owner => 'root',
group => 'root',
mode => '0755',
}
file { '/etc/opt/microsoft/mdatp/mdatp_onboard.json':
source => 'puppet:///modules/install_mdatp/mdatp_onboard.json',
owner => 'root',
group => 'root',
mode => '0600',
require => File['/etc/opt/microsoft/mdatp'],
}
# Install mdatp package
package { 'mdatp':
ensure => installed,
require => [
File['/etc/opt/microsoft/mdatp/mdatp_onboard.json'],
],
}
}
class install_mdatp (
$channel = 'prod'
) {
# Include the appropriate class based on the OS family
$distro = downcase($facts['os']['name'])
$version = $facts['os']['release']['major']
case $facts['os']['family'] {
'Debian': {
class { 'install_mdatp::configure_debian_repo':
channel => 'prod',
distro => $distro,
version => $version
} -> class { 'install_mdatp::install': }
}
'RedHat': {
class { 'install_mdatp::configure_redhat_repo':
channel => 'prod',
distro => $distro,
version => $version,
} -> class { 'install_mdatp::install': }
}
default: { fail("${facts['os']['family']} is currently not supported.")}
}
}
注意事項
Linux 上的適用於端點的 Defender 可以從下列其中一個通道部署: insiders-fast、insiders-slow、prod。每個通道對應一個 Linux 軟體儲存庫。 頻道的選擇決定了提供給您設備的更新的類型和頻率。 中的 insiders-fast 裝置是第一個在預覽版中接收更新和新功能的裝置,其次是 insiders-slow,最後是 prod。
記下您的發行版和版本,並在 下 https://packages.microsoft.com/config/[distro]/[version]識別最接近的項目。
警告
在初始安裝之後切換通道需要重新安裝產品。 若要切換產品管道:解除安裝現有套件、重新設定裝置以使用新通道,然後依照本檔案中的步驟從新位置安裝套件。
將資訊清單包含在 site.pp 檔案中
在您的檔案中 site.pp 包含本文稍早所述的資訊清單:
cat /etc/puppetlabs/code/environments/production/manifests/site.pp
node "default" {
include install_mdatp
}
已註冊的代理程式裝置會定期輪詢 Puppet Server,並在偵測到新的組態描述檔和原則後立即安裝它們。
監控您的 Puppet 部署
在代理程式裝置上,您也可以執行下列命令來檢查部署狀態:
mdatp health
...
healthy : true
health_issues : []
licensed : true
org_id : "[your organization identifier]"
...
-
healthy:確認適用於端點的 Defender 已成功部署並運作。 -
health_issues:說明導致健康狀態變為錯誤的問題。 -
licensed:確認裝置已繫結至您的組織。 -
orgId:您的適用於端點的 Defender 組織識別碼。
安裝問題的疑難排解
如果您遇到任何安裝問題,若要進行自我疑難排解,請遵循下列步驟:
如需如何尋找發生安裝錯誤時自動產生的記錄的資訊,請參閱 記錄安裝問題。
如需常見安裝問題的相關資訊,請參閱 安裝問題。
如果裝置的健康情況為
false,請參閱適用於 端點的 Defender 代理程式健康情況問題。如需產品效能問題,請參閱 疑難排解效能問題。
如需 Proxy 和連線問題,請參閱 疑難排解雲端連線問題。
若要取得 Microsoft 的支援,請開啟支援票證,並提供使用 用戶端分析器建立的記錄檔。
如何在 Linux 上設定 Microsoft Defender 的原則
若要設定防病毒軟體和 EDR 設定,請參閱下列文章:
- 適用於端點的 Defender 安全性設定管理說明如何在 Microsoft Defender 入口網站中設定設定。 (建議使用此方法 )
- 設定適用於 Linux 上的適用於端點的 Defender 喜好設定 描述您可以設定的設定。
作業系統升級
將作業系統升級至新的主要版本時,您必須先解除安裝 Linux 上的適用於端點的 Defender、安裝升級,然後在裝置上重新設定適用於端點的 Defender。
解除安裝
在檔案中init.pp建立類似install_mdatp以下內容的模組remove_mdatp:
class remove_mdatp {
package { 'mdatp':
ensure => 'purged',
}
}
相關內容
- 在 Linux 上適用於端點的 Microsoft Defender的必要條件
- 使用安裝程式腳本型部署,在 Linux 上部署適用於端點的 Defender
- 使用 Ansible 在 Linux 上部署適用於端點的 Defender
- 使用 Chef 在 Linux 上部署適用於端點的 Microsoft Defender
- 使用 Saltstack 在 Linux 上部署適用於端點的 Defender
- 在 Linux 上手動部署適用於端點的 Defender
- 使用適用於) 雲端的 Defender 將非 Azure 機器連線到適用於雲端的 Microsoft Defender, (使用適用於雲端的 Defender 直接上線
- 適用於 SAP 的 Linux 上適用於端點的 Defender 部署指引
- 在 Linux 上安裝適用於端點的 Defender 至自訂路徑
提示
想要深入了解? 在我們的技術社區中與Microsoft安全社區Engage:適用於端點的 Microsoft Defender技術社區。