在 Azure 中使用 Docker 配置自动日志上传
本文介绍如何使用 Azure 中的 Ubuntu 或 CentOS 上的 Docker 在 Defender for Cloud Apps 中为连续报表配置自动日志上传。
先决条件
在开始之前,请确保环境满足以下要求:
要求 | 说明 |
---|---|
操作系统 | 以下各项之一: - Ubuntu 14.04、16.04、18.04 和 20.04 - CentOS 7.2 或更高版本 |
磁盘空间 | 250 GB |
CPU 内核 | 2 |
CPU 体系结构 | Intel 64 和 AMD 64 |
RAM | 4 GB |
防火墙配置 | 如网络要求中定义 |
按性能规划日志收集器
每个日志收集器可以成功处理每小时最多 50 GB 的日志容量,包括多达 10 个数据源。 日志收集过程中main瓶颈包括:
网络带宽 - 网络带宽决定日志上传速度。
虚拟机的 I/O 性能 - 确定日志写入日志收集器磁盘的速度。 日志收集器具有内置的安全机制,用于监视日志到达的速率,并将其与上传速率进行比较。 如果出现拥塞,日志收集器将开始删除日志文件。 如果设置通常超过每小时 50 GB,建议在多个日志收集器之间拆分流量。
如果需要超过 10 个数据源,建议在多个日志收集器之间拆分数据源。
定义数据源
在Microsoft Defender门户中,选择“设置>”“云应用”“>云发现>自动日志上传”。
在“ 数据源 ”选项卡上,为要从中上传日志的每个防火墙或代理创建匹配的数据源:
选择 “添加数据源”。
在 “添加数据源 ”对话框中,输入数据源的名称,然后选择源和接收方类型。
在选择源之前,请选择“ 查看预期日志文件的示例 ”,并将日志与预期格式进行比较。 如果日志文件格式与此示例不匹配,请将数据源添加为 “其他”。
若要使用未列出的网络设备,请选择“ 其他 > 客户日志格式 ”或“ 其他 (仅) 手动 ”。 有关详细信息,请参阅 使用自定义日志分析器。
注意
与安全传输协议 (FTPS 和 Syslog 集成 – TLS) 通常需要其他设置或防火墙/代理。
对日志可用于检测网络上流量的每个防火墙和代理重复此过程。
建议为每个网络设备设置一个专用数据源,以便单独监视每个设备的状态以进行调查,并在每个设备由其他用户段使用时浏览每个设备的影子 IT 发现。
创建日志收集器
在Microsoft Defender门户中,选择“设置>”“云应用”“>云发现>自动日志上传”。
在“ 日志收集器 ”选项卡上,选择“ 添加日志收集器”。
在 “创建日志收集器 ”对话框中,输入以下详细信息:
- 日志收集器的名称
- 主机 IP 地址,它是用于部署 Docker 的计算机的专用 IP 地址。 如果存在解析主机名的 DNS 服务器或等效服务器,也可以将主机 IP 地址替换为计算机名称。
然后选择“ 数据源 () ”框以选择要连接到收集器的数据源,然后选择“ 更新 ”以保存所做的更改。 每个日志收集器可以处理多个数据源。
“ 创建日志收集器 ”对话框显示进一步的部署详细信息,包括用于导入收集器配置的命令。 例如:
选择命令旁边的“复制”图标,以便将其复制到剪贴板。
“创建日志收集器”对话框中显示的详细信息因所选源和接收方类型而异。 例如,如果选择了 Syslog,对话框将包含有关 syslog 侦听器侦听的端口的详细信息。
复制屏幕内容并将其保存在本地,因为将日志收集器配置为与Defender for Cloud Apps通信时需要它们。
选择“ 导出 ”,将源配置导出到描述如何在设备中配置日志导出的 .CSV 文件。
提示
对于首次通过 FTP 发送日志数据的用户,我们建议更改 FTP 用户的密码。 有关详细信息,请参阅 更改 FTP 密码。
在 Azure 中部署计算机
此过程介绍如何使用 Ubuntu 部署计算机。 其他平台的部署步骤略有不同。
在 Azure 环境中创建新的 Ubuntu 计算机。
计算机启动后,打开端口:
在计算机视图中,转到 “网络 ”,通过双击选择相关界面。
转到 “网络安全组 ”,然后选择相关的网络安全组。
转到 “入站安全规则 ”,然后单击“ 添加”。
在 高级 模式) 中添加以下规则 (:
名称 目标端口范围 协议 源 目标 caslogcollector_ftp 21 TCP Your appliance's IP address's subnet
任何 caslogcollector_ftp_passive 20000-20099 TCP Your appliance's IP address's subnet
任何 caslogcollector_syslogs_tcp 601-700 TCP Your appliance's IP address's subnet
任何 caslogcollector_syslogs_udp 514-600 UDP Your appliance's IP address's subnet
任何
有关详细信息,请参阅 使用安全规则。
返回计算机,然后单击“连接”打开计算机上的终端。
使用
sudo -i
更改为根权限。如果接受软件许可条款,请卸载旧版本并通过运行适用于你的环境的命令来安装 Docker CE:
删除旧版 Docker:
yum erase docker docker-engine docker.io
安装 Docker 引擎先决条件:
yum install -y yum-utils
添加 Docker 存储库:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum makecache
安装 Docker 引擎:
yum -y install docker-ce
启动 Docker
systemctl start docker systemctl enable docker
测试 Docker 安装:
docker run hello-world
运行之前从 “创建日志收集器 ”对话框复制的命令。 例如:
(echo db3a7c73eb7e91a0db53566c50bab7ed3a755607d90bb348c875825a7d1b2fce) | docker run --name MyLogCollector -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='192.168.1.1'" -e "PROXY=192.168.10.1: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>
。 应获得结果: 成功完成!
配置网络设备本地设置
配置网络防火墙和代理,以便根据对话框中的说明定期将日志导出到 FTP 目录的专用 Syslog 端口。 例如:
BlueCoat_HQ - Destination path: \<<machine_name>>\BlueCoat_HQ\
在 Defender for Cloud Apps 中验证部署
检查日志收集器表中的 收集器 状态,并确保状态为 “已连接”。 如果已 创建,则日志收集器连接和分析可能尚未完成。
例如:
还可以转到 治理日志 ,并验证是否定期将日志上传到门户。
或者,可以使用以下命令从 docker 容器内检查日志收集器状态:
- 使用以下命令登录到容器:
docker exec -it <Container Name> bash
- 使用以下命令验证日志收集器状态:
collector_status -p
如果在部署过程中遇到问题,请参阅 云发现疑难解答。
可选 - 创建自定义连续报表
验证日志是否已上传到Defender for Cloud Apps以及是否生成了报告。 验证后,创建自定义报表。 可以根据Microsoft Entra用户组创建自定义发现报告。 例如,如果要查看营销部门的云使用情况,请使用导入用户组功能导入营销组。 然后为此组创建自定义报表。 还可以根据 IP 地址标记或 IP 地址范围自定义报表。
在Microsoft Defender门户中,选择“设置”。 然后选择“ 云应用”。
在 “Cloud Discovery”下,选择“ 连续报表”。
单击“ 创建报表 ”按钮并填写字段。
在 “筛选器” 下,可以按数据源、 导入的用户组或 IP 地址标记和范围筛选数据。
注意
对连续报表应用筛选器时,将包含所选内容,但不排除。 例如,如果对某个用户组应用筛选器,则报表中只会包含该用户组。
删除日志收集器
如果你有一个现有的日志收集器,并且想要在再次部署之前将其删除,或者如果只想删除它,请运行以下命令:
docker stop <collector_name>
docker rm <collector_name>
后续步骤
如果你遇到任何问题,我们随时为你提供帮助。 若要获取有关产品问题的帮助或支持,请 开具支持票证。