在 Linux 上手动部署Microsoft Defender for Endpoint
适用于:
- Microsoft Defender for Endpoint 服务器版
- 服务器的Microsoft Defender
希望体验 Defender for Endpoint? 注册免费试用版。
提示
正在查找有关在 Linux 上部署Microsoft Defender for Endpoint的高级指南? 请参阅 Linux 上的 Defender for Endpoint 上的高级部署指南。
本文介绍如何在 Linux 上手动部署Microsoft Defender for Endpoint。 成功的部署需要完成以下所有任务:
先决条件和系统要求
在开始之前,请参阅 Linux 上的Microsoft Defender for Endpoint,了解当前软件版本的先决条件和系统要求的说明。
警告
在产品安装后,将作系统升级到新的主版本需要重新安装产品。 需要 卸载 Linux 上的现有 Defender for Endpoint,升级作系统,然后按照以下步骤在 Linux 上重新配置 Defender for Endpoint。
配置 Linux 软件存储库
Linux 上的 Defender for Endpoint 可以从以下通道之一进行部署, (表示为 [通道]) : insiders-fast、 insiders-slow 或 prod
。 其中每个通道都对应于 Linux 软件存储库。 本文中的说明介绍如何将设备配置为使用这些存储库之一。
通道的选择决定了提供给设备的更新的类型和频率。
预览体验成员中的设备是第一个接收更新和新功能的设备,然后是预览体验成员慢,最后是 prod
。
为了预览新功能并提供早期反馈,建议在企业中配置一些设备,以使用 预览体验成员快速 或 预览体验成员慢速。
警告
在初始安装后切换通道需要重新安装产品。 若要切换产品通道:卸载现有包,将设备重新配置为使用新通道,然后按照本文档中的步骤从新位置安装包。
RHEL 和变体 (CentOS、Fedora、Oracle Linux、Amazon Linux 2、Rocky 和 Alma)
如果尚未安装
yum-utils
,请安装:sudo yum install yum-utils
找到适用于你的发行版和版本的正确包。 使用下表来帮助指导你查找包:
发行版 & 版本 包 Alma 8.4 及更高版本 https://packages.microsoft.com/config/alma/8/prod.repo Alma 9.2 及更高版本 https://packages.microsoft.com/config/alma/9/prod.repo RHEL/Centos/Oracle 9.0-9.8 https://packages.microsoft.com/config/rhel/9/prod.repo RHEL/Centos/Oracle 8.0-8.10 https://packages.microsoft.com/config/rhel/8/prod.repo RHEL/Centos/Oracle 7.2-7.9 & Amazon Linux 2 https://packages.microsoft.com/config/rhel/7.2/prod.repo Amazon Linux 2023 https://packages.microsoft.com/config/amazonlinux/2023/prod.repo Fedora 33 https://packages.microsoft.com/config/fedora/33/prod.repo Fedora 34 https://packages.microsoft.com/config/fedora/34/prod.repo 洛基 8.7 及更高版本 https://packages.microsoft.com/config/rocky/8/prod.repo 洛基 9.2 及更高版本 https://packages.microsoft.com/config/rocky/9/prod.repo 注意
对于分发版和版本,请确定其 (最接近的条目,然后在 下
https://packages.microsoft.com/config/rhel/
按主) 标识次要) 。在以下命令中,将 [version] 和 [channel] 替换为已识别的信息:
sudo yum-config-manager --add-repo=https://packages.microsoft.com/config/rhel/[version]/[channel].repo
提示
使用 hostnamectl 命令标识系统相关信息,包括版本 [版本]。
例如,如果运行的是 CentOS 7,并希望从
prod
通道在 Linux 上部署 Defender for Endpoint:sudo yum-config-manager --add-repo=https://packages.microsoft.com/config/rhel/7/prod.repo
或者,如果要在所选设备上探索新功能,可能需要将 Linux 上的Microsoft Defender for Endpoint部署到预览体验成员快速频道:
sudo yum-config-manager --add-repo=https://packages.microsoft.com/config/rhel/7/insiders-fast.repo
安装 Microsoft GPG 公钥:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
SLES 和变体
注意
对于分发版和版本,请确定其 (最接近的条目,然后在 下 https://packages.microsoft.com/config/sles/
按主) 标识次要) 。
在以下命令中,将 [发行版] 和 [版本] 替换为已识别的信息:
sudo zypper addrepo -c -f -n microsoft-[channel] https://packages.microsoft.com/config/[distro]/[version]/[channel].repo
提示
使用 SPident 命令标识系统相关信息,包括版本 [版本]。
例如,如果运行 SLES 12 并希望从
prod
通道在 Linux 上部署Microsoft Defender for Endpoint:sudo zypper addrepo -c -f -n microsoft-prod https://packages.microsoft.com/config/sles/12/prod.repo
安装 Microsoft GPG 公钥:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
Ubuntu 和 Debian 系统
如果尚未安装
curl
,请安装:sudo apt-get install curl
如果尚未安装
libplist-utils
,请安装:sudo apt-get install libplist-utils
注意
对于分发版和版本,请确定其 (最接近的条目,然后在 下
https://packages.microsoft.com/config/[distro]/
按主) 标识次要) 。在以下命令中,将 [发行版] 和 [版本] 替换为已识别的信息:
curl -o microsoft.list https://packages.microsoft.com/config/[distro]/[version]/[channel].list
提示
使用 hostnamectl 命令标识系统相关信息,包括版本 [版本]。
例如,如果运行的是 Ubuntu 18.04,并希望从
prod
通道在 Linux 上部署Microsoft Defender for Endpoint:curl -o microsoft.list https://packages.microsoft.com/config/ubuntu/18.04/prod.list
安装存储库配置:
sudo mv ./microsoft.list /etc/apt/sources.list.d/microsoft-[channel].list
例如,如果选择频道
prod
:sudo mv ./microsoft.list /etc/apt/sources.list.d/microsoft-prod.list
安装包(
gpg
如果尚未安装):sudo apt-get install gpg
如果
gpg
不可用,请安装gnupg
。sudo apt-get install gnupg
安装 Microsoft GPG 公钥:
对于 Debian 11 及更早版本,请运行以下命令。
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/microsoft.gpg > /dev/null
对于 Debian 12 及更高版本,请运行以下命令。
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /usr/share/keyrings/microsoft-prod.gpg > /dev/null
安装 HTTPS 驱动程序(如果尚未安装):
sudo apt-get install apt-transport-https
更新存储库元数据:
sudo apt-get update
水手
如果尚未安装
dnf-plugins-core
,请安装:sudo dnf install dnf-plugins-core
配置并启用所需的存储库。
注意
在 Mariner 上,预览体验成员快速频道不可用。
如果要从
prod
通道在 Linux 上部署 Defender for Endpoint。 使用以下命令sudo dnf install mariner-repos-extras sudo dnf config-manager --enable mariner-official-extras
或者,如果要在所选设备上探索新功能,可能需要将 Linux 上的Microsoft Defender for Endpoint部署到预览体验成员慢速频道。 使用以下命令:
sudo dnf install mariner-repos-extras-preview sudo dnf config-manager --enable mariner-official-extras-preview
应用程序安装
使用以下部分中的命令在 Linux 分发版上安装 Defender for Endpoint。
RHEL 和变体 (CentOS、Fedora、Oracle Linux、Amazon Linux 2、Rocky 和 Alma)
sudo yum install mdatp
注意
如果在设备上配置了多个Microsoft存储库,则可以具体说明要从哪个存储库安装包。 以下示例演示如何在此设备上配置存储库通道时 production
从通道 insiders-fast
安装包。 如果你在设备上使用多个Microsoft产品,则可能会出现这种情况。 根据服务器的分发和版本,存储库别名可能与以下示例中的别名不同。
# list all repositories
yum repolist
...
packages-microsoft-com-prod packages-microsoft-com-prod 316
packages-microsoft-com-prod-insiders-fast packages-microsoft-com-prod-ins 2
...
# install the package from the production repository
sudo yum --enablerepo=packages-microsoft-com-prod install mdatp
SLES 和变体
sudo zypper install mdatp
注意
如果在设备上配置了多个Microsoft存储库,则可以具体说明要从哪个存储库安装包。 以下示例演示如何在此设备上配置存储库通道时 production
从通道 insiders-fast
安装包。 如果你在设备上使用多个Microsoft产品,则可能会出现这种情况。
zypper repos
...
# | Alias | Name | ...
XX | packages-microsoft-com-insiders-fast | microsoft-insiders-fast | ...
XX | packages-microsoft-com-prod | microsoft-prod | ...
...
sudo zypper install packages-microsoft-com-prod:mdatp
Ubuntu 和 Debian 系统
sudo apt-get install mdatp
注意
如果在设备上配置了多个Microsoft存储库,则可以具体说明要从哪个存储库安装包。 以下示例演示如何在此设备上配置存储库通道时 production
从通道 insiders-fast
安装包。 如果你在设备上使用多个Microsoft产品,则可能会出现这种情况。
cat /etc/apt/sources.list.d/*
deb [arch=arm64,armhf,amd64] https://packages.microsoft.com/config/ubuntu/18.04/prod insiders-fast main
deb [arch=amd64] https://packages.microsoft.com/config/ubuntu/18.04/prod bionic main
sudo apt -t bionic install mdatp
注意
在 Linux 上安装或更新Microsoft Defender for Endpoint后不需要重新启动,除非在不可变模式下运行 auditD。
水手
sudo dnf install mdatp
注意
如果在设备上配置了多个Microsoft存储库,则可以具体说明要从哪个存储库安装包。 以下示例演示如何在此设备上配置存储库通道时 production
从通道 insiders-slow
安装包。 如果你在设备上使用多个Microsoft产品,则可能会出现这种情况。
sudo dnf config-manager --disable mariner-official-extras-preview
sudo dnf config-manager --enable mariner-official-extras
下载载入包
从 Microsoft Defender 门户下载载入包。
警告
不支持重新打包 Defender for Endpoint 安装包。 这样做可能会对产品的完整性产生负面影响,并导致不良结果,包括但不限于触发篡改警报和无法应用的更新。
重要
如果错过此步骤,执行的任何命令都将显示一条警告消息,指示产品未授权。 此外, mdatp health
命令返回值 false
。
在Microsoft Defender门户中,转到“设置>终结点”“>设备管理>”“载入”。
在第一个下拉菜单中,选择“ Linux 服务器 ”作为作系统。 在第二个下拉菜单中,选择“ 本地脚本 ”作为部署方法。
选择“下载载入包”。 将文件另存为
WindowsDefenderATPOnboardingPackage.zip
。在命令提示符下,验证是否具有 文件,并提取存档的内容:
ls -l
total 8 -rw-r--r-- 1 test staff 5752 Feb 18 11:22 WindowsDefenderATPOnboardingPackage.zip
unzip WindowsDefenderATPOnboardingPackage.zip
Archive: WindowsDefenderATPOnboardingPackage.zip inflating: MicrosoftDefenderATPOnboardingLinuxServer.py
客户端配置
复制到
MicrosoftDefenderATPOnboardingLinuxServer.py
目标设备。注意
最初,客户端设备不与组织关联, 且 orgId 属性为空。
mdatp health --field org_id
运行
MicrosoftDefenderATPOnboardingLinuxServer.py
。注意
若要运行此命令,必须在
python
设备上安装或python3
安装,具体取决于发行版和版本。 如果需要,请参阅 在 Linux 上安装 Python 的分步说明。若要载入以前已离开的设备,必须删除位于 /etc/opt/microsoft/mdatp 的 mdatp_offboard.json 文件。
如果运行的是 RHEL 8.x 或 Ubuntu 20.04 或更高版本,则需要使用
python3
。sudo python3 MicrosoftDefenderATPOnboardingLinuxServer.py
对于其余发行版和版本,需要使用
python
。sudo python MicrosoftDefenderATPOnboardingLinuxServer.py
验证设备现在是否与你的组织关联,并报告有效的组织标识符:
mdatp health --field org_id
运行以下命令,检查产品的运行状况。 返回值 表示
true
产品按预期运行:mdatp health --field healthy
重要
当产品首次启动时,它会下载最新的反恶意软件定义。 此过程最多可能需要几分钟时间,具体取决于网络连接。 在此期间,前面提到的命令返回 值
false
。 可以使用以下命令检查定义更新的状态:mdatp health --field definitions_status
完成初始安装后,可能还需要配置代理。 请参阅 在 Linux 上配置 Defender for Endpoint 以获取静态代理发现:安装后配置。
运行防病毒检测测试,验证设备是否已正确载入并向服务报告。 在新加入的设备上执行以下步骤:
确保启用实时保护, (运行以下命令) 的结果
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
可以使用以下命令之一对 zip 文件运行更多检测测试:
curl -o /tmp/eicar_com.zip https://secure.eicar.org/eicar_com.zip curl -o /tmp/eicarcom2.zip https://secure.eicar.org/eicarcom2.zip
这些文件应由 Linux 上的 Defender for Endpoint 隔离。
使用以下命令列出所有检测到的威胁:
mdatp threat list
运行 EDR 检测测试并模拟检测,验证设备是否已正确载入并向服务报告。 在新加入的设备上执行以下步骤:
验证载入的 Linux 服务器是否显示在Microsoft Defender XDR中。 如果这是计算机的首次载入,则最长可能需要 20 分钟才能出现。
将 脚本文件 下载并解压缩到载入的 Linux 服务器,然后运行以下命令:
./mde_linux_edr_diy.sh
几分钟后,应在Microsoft Defender XDR中引发检测。
查看警报详细信息、计算机时间线,并执行典型的调查步骤。
Microsoft Defender for Endpoint包外部包依赖项
包存在 mdatp
以下外部包依赖项:
- mdatp RPM 包需要
glibc >= 2.17
、policycoreutils
、、selinux-policy-targeted
mde-netfilter
- 对于 DEBIAN,mdatp 包需要
libc6 >= 2.23
、uuid-runtime
、mde-netfilter
- 对于 Mariner,mdatp 包需要
attr
、、diffutils
、libacl
libattr
、libselinux-utils
selinux-policy
、policycoreutils
、、mde-netfilter
注意
从版本 101.24082.0004
开始,Linux 上的 Defender for Endpoint 不再支持 Auditd
事件提供程序。 我们正在完全过渡到更高效的 eBPF 技术。
如果计算机上不支持 eBPF,或者有特定要求要保留在“审核”中,并且计算机使用的是 Linux 版或更低版本的 101.24072.0001
Defender for Endpoint,则 mdatp 的已审核包上存在以下其他依赖项:
- mdatp RPM 包需要
audit
、semanage
。 - 对于 DEBIAN,mdatp 包需要
auditd
。 - 对于 Mariner,mdatp 包需要
audit
。
包 mde-netfilter
还具有以下包依赖项:
- 对于 DEBIAN,包
mde-netfilter
需要libnetfilter-queue1
、libglib2.0-0
- 对于 RPM,包
mde-netfilter
需要libmnl
、、libnfnetlink
libnetfilter_queue
、glib2
- 对于 Mariner,包
mde-netfilter
需要libnfnetlink
、libnetfilter_queue
如果Microsoft Defender for Endpoint安装由于缺少依赖项错误而失败,可以手动下载先决条件依赖项。
解决安装问题
有关如何查找发生安装错误时生成的日志的详细信息,请参阅 日志安装问题。
有关常见安装问题的信息,请参阅 安装问题。
如果设备的运行状况为 false,请参阅 调查代理运行状况问题。
有关产品性能问题,请参阅排查 Linux 上Microsoft Defender for Endpoint的性能问题。
有关代理和连接问题,请参阅排查 Linux 上Microsoft Defender for Endpoint的云连接问题。
若要从Microsoft获取支持,请打开支持票证,并使用 Microsoft Defender for Endpoint 客户端分析器工具提供创建的日志文件。
如何在通道之间切换
例如,若要将通道从 Insiders-Fast 更改为生产,请执行以下作:
Insiders-Fast channel
卸载 Linux 上的 Defender for Endpoint 版本。sudo yum remove mdatp
禁用 Linux Insiders-Fast 上的 Defender for Endpoint 通道
sudo yum-config-manager --disable packages-microsoft-com-fast-prod
使用
Production channel
在 Linux 上重新安装 Microsoft Defender for Endpoint,并在 Microsoft Defender 门户中载入设备。
如何在 Linux 上为Microsoft Defender for Endpoint配置策略
可以在终结点上配置防病毒和 EDR 设置。 有关详细信息,请参阅以下文章:
- 在 Linux 上设置Microsoft Defender for Endpoint首选项介绍了可用设置
- 安全设置管理介绍如何在Microsoft Defender门户中配置设置。
在 Linux 上卸载Microsoft Defender for Endpoint
对于手动卸载,请为 Linux 分发版执行以下命令。
-
sudo yum remove mdatp
对于 RHEL 和变体, (CentOS 和 Oracle Linux) 。 -
sudo zypper remove mdatp
用于 SLES 和变体。 -
sudo apt-get purge mdatp
用于 Ubuntu 和 Debian 系统。 -
sudo dnf remove mdatp
水手
提示
想要了解更多信息? Engage技术社区中的Microsoft安全社区:Microsoft Defender for Endpoint技术社区。