收集 Nutanix Prism 日志

支持的语言:

概览

此解析器可处理 Nutanix Prism 日志,并支持 JSON 和 syslog 格式。它从各种日志结构中提取字段,将这些字段标准化为 UDM,并使用用户信息、网络详细信息和安全严重程度等其他上下文信息来丰富数据。解析器还会根据 HTTP 方法和日志级别执行特定操作,将事件归类为 UDM 事件类型,例如 USER_LOGINSTATUS_UPDATEGENERIC_EVENT

准备工作

  • 确保您拥有 Google SecOps 实例。
  • 确保您拥有对 Nutanix Prism Central 的特权访问权限。
  • 确保您拥有 Windows 2012 SP2 或更高版本或带有 systemd 的 Linux 主机。
  • 如果是在代理后面运行,请确保防火墙端口处于开放状态。

获取 Google SecOps 注入身份验证文件

  1. 登录 Google SecOps 控制台。
  2. 依次前往 SIEM 设置 > 收集代理
  3. 下载注入身份验证文件

获取 Google SecOps 客户 ID

  1. 登录 Google SecOps 控制台。
  2. 依次前往 SIEM 设置 > 个人资料
  3. 复制并保存组织详细信息部分中的客户 ID

安装 BindPlane 代理

  1. 对于 Windows 安装,请运行以下脚本:msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. 对于 Linux 安装,请运行以下脚本:sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. 如需了解其他安装选项,请参阅此安装指南

配置 Bindplane 代理以注入 Syslog 并将其发送到 Google SecOps

  1. 访问安装了 Bindplane 代理的机器。
  2. 按如下方式修改 config.yaml 文件:

    receivers:
      tcplog:
        # Replace the below port <54525> and IP (0.0.0.0) with your specific values
        listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Namespace
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. 使用以下命令重启 Bindplane 代理以应用更改: sudo systemctl bindplane restart

从 Nutanix Prism 导出 Syslog

  1. 使用特权账号登录 Prism Central。
  2. 从菜单中选择 Prism Central 设置
  3. 前往 Syslog 服务器
  4. 点击 + 配置 Syslog 服务器
  5. Syslog 服务器对话框中,为输入参数指定值:
    • 服务器名称:输入服务器的名称(例如 Google SecOps Bindplane 服务器
    • IP 地址:输入 Bindplane 代理的 IP。
    • 端口:输入 Bindplane 代理侦听的端口。
    • 传输协议:选择 TCP
    • 点击配置
  6. 点击数据源选项中的 + 修改
  7. 数据源和相应严重程度对话框中,为输入参数指定值:
    • 选择 API 审核审核Flow
    • 将每个的严重级别设置为 6 - 信息
    • 点击保存

UDM 映射表

日志字段 UDM 映射 逻辑
@timestamp metadata.event_timestamp 系统会从 @timestamp 字段中解析事件时间戳。支持 yyyy-MM-dd HH:mm:ss.SSSyyyy-MM-ddTHH:mm:ssZISO8601 格式。
agent.id observer.asset_id agent.type 结合使用,以“agent.type:agent.id”格式构成观测者资产 ID。
agent.type observer.application 用于观测的应用。
agent.version observer.platform_version 观测器应用的版本。
alertUid security_result.detection_fields.value 提醒 UID 的值会映射到 detection_fields 中的 value 字段。key 设置为“Alert Uid”。
api_version metadata.product_version API 版本。
clientIp principal.ipprincipal.asset.ip 客户端 IP 地址。
client_type principal.labels.value 客户端类型的值。key 设置为“client_type”。
defaultMsg metadata.description 默认消息。
entity_uuid metadata.product_log_id 实体的 UUID。
http_method network.http.method HTTP 方法。已转换为大写。
host.architecture principal.asset.hardware.cpu_platform 主机的架构。
host.id principal.asset_id 以“NUTANIX:”为前缀,创建主资产 ID。
host.ip principal.ipprincipal.asset.ip 主机 IP 地址。
host.mac principal.mac 主机 MAC 地址。
host.os.kernel principal.platform_patch_level 主机操作系统的内核版本。
host.os.platform principal.platform 主机操作系统的平台。映射到 LINUXWINDOWSMACUNKNOWN_PLATFORM
host.os.version principal.platform_version 宿主操作系统的版本。
input.type network.ip_protocol 网络协议。映射到“UDP”或“TCP”。
log.source.address principal.ipprincipal.asset.ipprincipal.port 已解析,以提取源 IP 和端口。
logstash.collect.host observer.ip Logstash 收集器的 IP 地址。
logstash.collect.timestamp metadata.collected_timestamp 收集日志时的时间戳。
logstash.ingest.host intermediary.hostname Logstash 注入服务器的主机名。
logstash.ingest.timestamp metadata.ingested_timestamp 日志的提取时间。
logstash.irm_environment principal.labels.value IRM 环境的值。key 设置为“irm_environment”。
logstash.irm_region principal.labels.value IRM 区域的值。key 设置为“irm_region”。
logstash.irm_site principal.labels.value IRM 网站的值。key 设置为“irm_site”。
logstash.process.host intermediary.hostname Logstash 处理服务器的主机名。
operationType metadata.product_event_type 操作类型。
originatingClusterUuid additional.fields.value.string_value 原始集群 UUID。key 设置为“源集群 UUID”。
params.mac_address target.mac 参数中的 MAC 地址。
params.requested_ip_address target.iptarget.asset.ip 参数中请求的 IP 地址。
params.vm_name target.resource.name 参数中的虚拟机名称。
program metadata.product_event_type 计划名称。
rest_endpoint target.url REST 端点。
sessionId additional.fields.value.string_value 会话 ID。key 设置为“会话 ID”。
syslog_host principal.hostnameprincipal.asset.hostname Syslog 主机。
timestamp metadata.event_timestamp 事件时间戳。
username principal.user.user_display_nameprincipal.user.userid 即用户名。如果 http_method 为“POST”,则用作用户 ID。
uuid metadata.product_log_id UUID。
不适用 metadata.vendor_name 硬编码为“Nutanix_Prism”。
不适用 metadata.product_name 硬编码为“Nutanix_Prism”。
不适用 metadata.event_type 由解析器逻辑根据 has_principalhas_targetaudit_lognetwork_sethttp_method 的值确定。可以是 GENERIC_EVENTUSER_LOGINSTATUS_UPDATEUSER_RESOURCE_ACCESSRESOURCE_CREATIONUSER_RESOURCE_UPDATE_CONTENTUSER_RESOURCE_DELETION
不适用 metadata.log_type 硬编码为“NUTANIX_PRISM”。
不适用 extensions.auth.type 如果 metadata.event_typeUSER_LOGIN,则设置为“AUTHTYPE_UNSPECIFIED”。
不适用 security_result.severity 由解析器逻辑根据 log_levelsyslog_pri 确定。可以是 CRITICALERRORHIGHMEDIUMINFORMATIONAL

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。