有人能够在 Linux Docker 映像上安装 MDATP 吗?
我们尝试了 CentOS、Debian 和 Ubuntu,但都遇到了同样的问题。当 Linux 机器是完整主机时,我成功安装了 MDATP,但在 Docker 中却不行。
我在安装之前做了以下操作:
apt-get -y install curl libplist-utils gpg apt-transport-https libseccomp2 libuuid1 libatomic1 libc6 python3 uuid-runtime dmidecode auditd libselinux1 systemd
此页面说明 MDATP 需要 systemd:https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-atp/microsoft-defender-atp-linux
我能够让 systemd 和 audit 与支持它的图像(centos/systemd)一起工作,并且 Dockerfile 中的这些行:
VOLUME [ "/sys/fs/cgroup" ]
CMD [ "/usr/sbin/init" ]
现在我陷入加载库的困境:
[root@7061463d26f5 src]# systemctl status mdatp
● mdatp.service - Microsoft Defender ATP
Loaded: loaded (/usr/lib/systemd/system/mdatp.service; enabled; vendor preset: disabled)
Active: deactivating (stop-sigterm) (Result: exit-code) since Sat 2021-03-13 00:54:54 PST; 4s ago
Process: 1389 ExecStart=/opt/microsoft/mdatp/sbin/wdavdaemon (code=exited, status=111)
Main PID: 1389 (code=exited, status=111)
CGroup: /docker/7061463d26f5ea10a880ad4209ea11b1a7c05349cb5a9641a0ac12245c51b674/system.slice/mdatp.service
└─1412 /opt/microsoft/mdatp/sbin/wdavdaemon edr 11 10 3
Mar 13 00:54:54 7061463d26f5 systemd[1]: Started Microsoft Defender ATP.
Mar 13 00:54:54 7061463d26f5 systemd[1]: mdatp.service: main process exited, code=exited, status=111/n/a
[root@7061463d26f5 src]# /opt/microsoft/mdatp/sbin/wdavdaemon &
[1] 1654
[root@7061463d26f5 src]# /opt/microsoft/mdatp/sbin/crashpad_handler: error while loading shared libraries: libc++.so.1: cannot open shared object file: No such file or directory
[root@7061463d26f5 src]# ll /opt/microsoft/mdatp/lib/libc++.so.1
-rw-r--r-- 1 root root 879240 Mar 8 05:56 /opt/microsoft/mdatp/lib/libc++.so.1
[root@7061463d26f5 src]# grep LD /usr/lib/systemd/system/mdatp.service
Environment=LD_LIBRARY_PATH=/opt/microsoft/mdatp/lib/
如您所见,“缺失”的库存在,并且似乎配置正确。也许环境变量不正确?
此人可能一直在使用 Linux Docker 镜像:https://dawnbringer.net/blog/1085/msatp_debian10
我们的企业 MS 支持表示 Docker 不受支持并结案。
关于我该如何继续,您有什么想法吗?