收集 VMware Horizon 日志
支持的语言:
Google SecOps
SIEM
本文档介绍了如何使用 Bindplane 将 Omnissa Horizon(以前称为 VMware Horizon)日志注入到 Google Security Operations。解析器首先使用正则表达式(Grok 模式)从原始 syslog 消息中提取字段。然后,它会将提取的字段映射到 Chronicle UDM 架构中的相应字段,从而对数据进行规范化和结构化处理,以供分析。
准备工作
请确保满足以下前提条件:
- Google SecOps 实例
- Windows 2016 或更高版本,或者具有
systemd
的 Linux 主机 - 如果通过代理运行,请确保防火墙端口处于开放状态
- 对 Omnissa Horizon 8 的特权访问权限
获取 Google SecOps 注入身份验证文件
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 收集代理。
- 下载注入身份验证文件。将该文件安全地保存在将要安装 Bindplane 的系统上。
获取 Google SecOps 客户 ID
- 登录 Google SecOps 控制台。
- 依次前往 SIEM 设置 > 配置文件。
- 复制并保存组织详细信息部分中的客户 ID。
安装 Bindplane 代理
按照以下说明在 Windows 或 Linux 操作系统上安装 Bindplane 代理。
Windows 安装
- 以管理员身份打开命令提示符或 PowerShell。
运行以下命令:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Linux 安装
- 打开具有 root 或 sudo 权限的终端。
运行以下命令:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
其他安装资源
如需了解其他安装选项,请参阅安装指南。
配置 Bindplane 代理以注入 Syslog 并将其发送到 Google SecOps
- 访问配置文件:
- 找到
config.yaml
文件。通常,它位于 Linux 上的/etc/bindplane-agent/
目录中或 Windows 上的安装目录中。 - 使用文本编辑器(例如
nano
、vi
或记事本)打开该文件。
- 找到
按如下方式修改
config.yaml
文件:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'VMWARE_HORIZON' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- 根据基础架构的需要替换端口和 IP 地址。
- 将
<customer_id>
替换为实际的客户 ID。 - 将
/path/to/ingestion-authentication-file.json
更新为获取 Google SecOps 提取身份验证文件部分中保存身份验证文件的路径。
重启 Bindplane 代理以应用更改
如需在 Linux 中重启 Bindplane 代理,请运行以下命令:
sudo systemctl restart bindplane-agent
如需在 Windows 中重启 Bindplane 代理,您可以使用服务控制台,也可以输入以下命令:
net stop BindPlaneAgent && net start BindPlaneAgent
为 Omnissa Horizon(以前称为 VMware Horizon)配置 Syslog
- 登录 Onmissa Horizon 网页界面,
- 依次前往设置 > 活动配置。
- 在发送到 Syslog 服务器部分,点击添加。
- 输入 Bindplane 代理 IP 地址和端口号(请确保将 Bindplane 协议配置为 UDP)。
- 点击保存。
UDM 映射表
日志字段 | UDM 映射 | 逻辑 |
---|---|---|
ActionId |
metadata.product_log_id | 原始日志中的“ActionId”值会映射到“metadata.product_log_id”。 |
admin_domain |
principal.administrative_domain | 原始日志中的“admin_domain”值会映射到“principal.administrative_domain”。 |
BrokerName |
principal.hostname | 原始日志中的“BrokerName”值会映射到“principal.hostname”。 |
BrokerSessionId |
network.session_id | 原始日志中的“BrokerSessionId”值会映射到“network.session_id”。 |
ClientIpAddress |
principal.ip | 原始日志中的“ClientIpAddress”值会映射到“principal.ip”。 |
CurrentSessionLength |
network.session_duration.seconds | 原始日志中的“CurrentSessionLength”值会转换为整数,然后映射到“network.session_duration.seconds”。 |
description |
metadata.description | 原始日志中的“description”值会映射到“metadata.description”。 |
DesktopDisplayName |
principal.hostname | 原始日志中的“DesktopDisplayName”值会映射到“principal.hostname”。 |
EventType |
metadata.product_event_type | 原始日志中的“EventType”值会映射到“metadata.product_event_type”。 |
ForwardedClientIpAddress |
principal.nat_ip | 原始日志中的“ForwardedClientIpAddress”的值会映射到“principal.nat_ip”。 |
GlobalEntitlementName |
target.user.group_identifiers | 原始日志中的“GlobalEntitlementName”值会映射到“target.user.group_identifiers”。 |
host |
principal.hostname | 原始日志中的“host”值会映射到“principal.hostname”。 |
MachineDnsName |
principal.url | 原始日志中的“MachineDnsName”的值会映射到“principal.url”。 |
MachineName |
intermediary.hostname | 原始日志中的“MachineName”值会映射到“intermediary.hostname”。 |
Module |
additional.fields | 系统会将原始日志中值为“Module”的键“Module”添加到“additional.fields”数组中。 |
pid |
principal.process.pid | 原始日志中的“pid”值会映射到“principal.process.pid”。 |
PoolId |
additional.fields | 包含原始日志中“PoolId”值的“PoolId”键已添加到“additional.fields”数组中。 |
program |
principal.application | 原始日志中的“程序”值会映射到“principal.application”。 |
SessionType |
additional.fields | 系统会将包含原始日志中“SessionType”值的“SessionType”键添加到“additional.fields”数组中。 |
Severity |
security_result.severity | 原始日志中的“严重程度”值会转换为大写,映射到通用的 Chronicle 严重程度,然后映射到“security_result.severity”。 |
timestamp |
metadata.event_timestamp | 原始日志中的“时间戳”值会转换为 Chronicle 格式,然后映射到“metadata.event_timestamp”。 |
UserDisplayName |
target.user.user_display_name | 原始日志中的“UserDisplayName”值会映射到“target.user.user_display_name”。 |
UserName |
target.user.userid | 原始日志中的“UserName”值会映射到“target.user.userid”。 |
UserSID |
target.user.windows_sid | 原始日志中的“UserSID”值会映射到“target.user.windows_sid”。 |
ViewApiMethodName |
additional.fields | 系统会将原始日志中值为“ViewApiMethodName”的键“ViewApiMethodName”添加到“additional.fields”数组。 |
ViewApiServiceName |
additional.fields | 系统会将原始日志中值为“ViewApiServiceName”的键“ViewApiServiceName”添加到“additional.fields”数组中。 |
extensions.auth.type | 如果“EventType”字段为“ADMIN_USERLOGGEDOUT”“AGENT_CONNECTED”“AGENT_DISCONNECTED”“AGENT_ENDED”“AGENT_PENDING”“AGENT_PENDING_EXPIRED”“AGENT_RECONNECTED”“BROKER_DESKTOP_REQUEST”“BROKER_LMV_REMOTE_POD_DESKTOP_LAUNCH”“BROKER_MACHINE_ALLOCATED”“BROKER_USER_AUTHFAILED_BAD_USER_PASSWORD”“BROKER_USER_LOCK_SSO”“BROKER_USERLOGGEDIN”“BROKER_USERLOGGEDOUT”“VLSI_USERLOGGEDIN”“VLSI_INSUFFICIENT_PERMISSION”“VLSI_USERLOGGEDIN_REST”“TIMING_PROFILER_TUNNEL_CONNECTION”“TIMING_PROFILER_GET_LAUNCH_ITEMS”“TIMING_PROFILER_USER_AUTHENTICATION”之一,则该值设置为“SSO”。 | |
metadata.event_type | 该值由“EventType”字段确定。如果“EventType”是“ADMIN_USERLOGGEDOUT”“AGENT_DISCONNECTED”“AGENT_ENDED”“AGENT_PENDING_EXPIRED”“BROKER_USER_LOCK_SSO”“BROKER_USERLOGGEDOUT”之一,则“metadata.event_type”为“USER_LOGOUT”。如果“EventType”是“AGENT_CONNECTED”“AGENT_PENDING”“AGENT_RECONNECTED”“BROKER_USERLOGGEDIN”“VLSI_USERLOGGEDIN”“VLSI_INSUFFICIENT_PERMISSION”“VLSI_USERLOGGEDIN_REST”之一,则“metadata.event_type”为“USER_LOGIN”。如果“EventType”为“TIMING_PROFILER_GET_LAUNCH_ITEMS”,则“metadata.event_type”为“STATUS_UNCATEGORIZED”。如果“EventType”为“AGENT_SHUTDOWN”,则“metadata.event_type”为“STATUS_SHUTDOWN”。如果“EventType”是“AGENT_STARTUP”或“BROKER_LMV_REMOTE_POD_DESKTOP_LAUNCH”之一,则“metadata.event_type”为“STATUS_STARTUP”。否则,“metadata.event_type”为“GENERIC_EVENT”。 | |
metadata.log_type | 该值设置为“VMWARE_HORIZON”。 | |
metadata.product_name | 该值设置为“HORIZON”。 | |
metadata.vendor_name | 该值设置为“VMWARE”。 |
需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。