在 Windows 上使用本地 Docker 配置自动日志上传
可以使用 Windows 上的 Docker 在 Defender for Cloud Apps 中为连续报表配置自动日志上传。
先决条件
体系结构规范:
规范 说明 操作系统 以下各项之一: - Windows 10 (Fall 创意者更新)
- Windows Server 版本 1709+ (SAC)
- Windows Server 2019 (LTSC)
磁盘空间 250 GB CPU 内核 2 CPU 体系结构 Intel 64 和 AMD 64 RAM 4 GB 有关支持的 Docker 体系结构的列表,请参阅 Docker 安装文档。
根据需要设置防火墙。 有关详细信息,请参阅网络要求。
必须使用 Hyper-V 启用操作系统上的虚拟化。
重要
- 用户数超过 250 或年收入超过 1000 万美元的企业客户需要付费订阅才能使用适用于 Windows 的 Docker Desktop。 有关详细信息,请参阅 Docker 订阅概述。
- 用户必须登录,Docker 才能收集日志。 建议 Docker 用户断开连接而不注销。
- 适用于 Windows 的 Docker 在 VMWare 虚拟化方案中不受正式支持。
- 嵌套虚拟化方案中未正式支持适用于 Windows 的 Docker。 如果仍计划使用嵌套虚拟化,请参阅 Docker 的官方指南。
- 有关 Docker for Windows 的其他配置和实现注意事项的信息,请参阅 在 Windows 上安装 Docker 桌面。
删除现有日志收集器
如果你有一个现有的日志收集器,并且想要在再次部署之前将其删除,或者如果只想删除它,请运行以下命令:
docker stop <collector_name>
docker rm <collector_name>
日志收集器性能
日志收集器可以成功处理高达每小时 50 GB 的日志容量。 日志收集过程中main瓶颈包括:
网络带宽 - 网络带宽决定日志上传速度。
虚拟机的 I/O 性能 - 确定日志写入日志收集器磁盘的速度。 日志收集器具有内置的安全机制,用于监视日志到达的速率,并将其与上传速率进行比较。 如果出现拥塞,日志收集器将开始删除日志文件。 如果设置通常超过每小时 50 GB,建议在多个日志收集器之间拆分流量。
步骤 1 - Web 门户配置
使用以下步骤定义数据源并将其链接到日志收集器。 单个日志收集器可以处理多个数据源。
在Microsoft Defender门户中,选择“设置>云应用”“>云发现>自动日志上传>数据源”选项卡。
对于要从中上传日志的每个防火墙或代理,请创建匹配的数据源:
选择“ +添加数据源”。
命名 代理或防火墙。
从“ 源 ”列表中选择设备。 如果选择“ 自定义日志格式 ”以使用未列出的网络设备,请参阅 使用自定义日志分析程序 了解配置说明。
将日志与预期日志格式的示例进行比较。 如果日志文件格式与此示例不匹配,则应将数据源添加为 “其他”。
将 接收方类型 设置为 FTP、 FTPS、 Syslog – UDP 或 Syslog – TCP 或 Syslog – TLS。
注意
(FTPS 和 Syslog - TLS) 与安全传输协议集成通常需要对防火墙/代理进行其他设置。
对日志可用于检测网络上流量的每个防火墙和代理重复此过程。 建议为每个网络设备设置专用数据源,以便能够:
- 出于调查目的,单独监视每个设备的状态。
- 如果每个设备由不同的用户段使用,请浏览每个设备的影子 IT 发现。
在页面顶部,选择“ 日志收集器 ”选项卡,然后选择“ 添加日志收集器”。
在 “创建日志收集器 ”对话框中:
在 “名称” 字段中,为日志收集器输入有意义的名称。
为日志收集器指定 一个名称 ,并在用于部署 Docker 的计算机) 输入 主机 IP 地址 (专用 IP 地址。 如果存在解析主机名的 DNS 服务器 (或等效) ,则可以将主机 IP 地址替换为计算机名称。
选择要连接到收集器的所有 数据源 ,然后选择“ 更新 ”以保存配置。
后续步骤部分会显示进一步的部署信息,包括稍后将用于导入收集器配置的命令。 如果选择了 Syslog,此信息还包括有关 Syslog 侦听器侦听的端口的数据。
使用 用于 将命令复制到剪贴板并将其保存到单独位置的“复制”按钮。
使用“ ” 按钮导出预期的数据源配置。 此配置介绍如何在设备中设置日志导出。
对于首次通过 FTP 发送日志数据的用户,我们建议更改 FTP 用户的密码。 有关详细信息,请参阅 更改 FTP 密码。
步骤 2 - 计算机的本地部署
以下步骤介绍了 Windows 中的部署。 其他平台的部署步骤略有不同。
在 Windows 计算机上以管理员身份打开 PowerShell 终端。
运行以下命令以下载 Windows Docker 安装程序 PowerShell 脚本文件:
Invoke-WebRequest https://adaprodconsole.blob.core.windows.net/public-files/LogCollectorInstaller.ps1 -OutFile (Join-Path $Env:Temp LogCollectorInstaller.ps1)
若要验证安装程序是否由Microsoft签名,请参阅 验证安装程序签名。
若要启用 PowerShell 脚本执行,请运行:
Set-ExecutionPolicy RemoteSigned`
若要在计算机上安装 Docker 客户端,请运行:
& (Join-Path $Env:Temp LogCollectorInstaller.ps1)`
运行 命令后,计算机会自动重启。
当计算机再次启动并运行时,请再次运行相同的命令:
& (Join-Path $Env:Temp LogCollectorInstaller.ps1)`
运行 Docker 安装程序,选择使用 WSL 2 而不是 Hyper-V。
安装完成后,计算机会自动再次重启。
重启完成后,打开 Docker 客户端并接受 Docker 订阅协议。
如果未完成 WSL2 安装,将显示一条消息,指示使用单独的 MSI 更新包安装了 WSL 2 Linux 内核。
通过下载包完成安装。 有关详细信息,请参阅 下载 Linux 内核更新包。
再次打开 Docker Desktop 客户端,并确保它已启动。
以管理员身份打开命令提示符,并输入之前在 步骤 1 - Web 门户配置中从门户复制的运行命令。
如果需要配置代理,请添加代理 IP 地址和端口号。 例如,如果代理详细信息为 172.31.255.255:8080,则更新后的 run 命令为:
(echo db3a7c73eb7e91a0db53566c50bab7ed3a755607d90bb348c875825a7d1b2fce) | docker run --name MyLogCollector -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='10.255.255.255'" -e "PROXY=172.31.255.255:8080" -e "CONSOLE=mod244533.us.portal.cloudappsecurity.com" -e "COLLECTOR=MyLogCollector" --security-opt apparmor:unconfined --cap-add=SYS_ADMIN --restart unless-stopped -a stdin -i mcr.microsoft.com/mcas/logcollector starter
若要验证收集器是否正常运行,请运行:
docker logs <collector_name>
应会看到消息: “已成功完成! 例如:
步骤 3 - 网络设备的本地配置
配置网络防火墙和代理,以便根据对话框中的说明定期将日志导出到 FTP 目录的专用 Syslog 端口。 例如:
BlueCoat_HQ - Destination path: \<<machine_name>>\BlueCoat_HQ\
步骤 4 - 在门户中验证部署是否成功
检查日志收集器表中的 收集器 状态,并确保状态为 “已连接”。 如果已 创建,则日志收集器连接和分析可能尚未完成。
还可以转到 治理日志 ,并验证是否定期将日志上传到门户。
或者,可以使用以下命令从 docker 容器内检查日志收集器状态:
登录到容器:
docker exec -it <Container Name> bash
验证日志收集器状态:
collector_status -p
如果在部署过程中遇到问题,请参阅 云发现疑难解答。
可选 - 创建自定义连续报表
验证日志是否已上传到Defender for Cloud Apps以及是否生成了报告。 验证后,创建自定义报表。 可以根据Microsoft Entra用户组创建自定义发现报告。 例如,如果要查看营销部门的云使用情况,请使用导入用户组功能导入营销组。 然后为此组创建自定义报表。 还可以根据 IP 地址标记或 IP 地址范围自定义报表。
在Microsoft Defender门户中,选择“设置>云应用”“>云发现>连续报表”。
选择“ 创建报表 ”按钮并填写字段。
在 “筛选器” 下,可以按数据源、 导入的用户组或 IP 地址标记和范围筛选数据。
注意
对连续报表应用筛选器时,将包含所选内容,但不排除。 例如,如果对某个用户组应用筛选器,则报表中只会包含该用户组。
可选 - 验证安装程序签名
若要确保 docker 安装程序由 Microsoft签名:
右键单击文件,然后选择“ 属性”。
选择“ 数字签名 ”,并确保它显示“ 此数字签名正常”。
请确保 Microsoft公司 作为 签名者姓名下的唯一条目列出。
如果数字签名无效,则会显示 此数字签名无效:
后续步骤
如果你遇到任何问题,我们随时为你提供帮助。 若要获取有关产品问题的帮助或支持,请 开具支持票证。