收集 Yamaha 路由器日志

支持的语言:

本文档介绍了如何使用 Bindplane 将 Yamaha 路由器日志注入到 Google Security Operations。解析器使用 Grok 模式从 syslog 消息中提取时间戳、主机名、用户、说明、源 IP 地址和目标 IP 地址等字段。然后,它会将这些提取的字段映射到 UDM,并根据主账号、目标和用户信息的存在情况对事件类型进行分类。

准备工作

请确保满足以下前提条件:

  • Google SecOps 实例
  • Windows 2016 或更高版本,或者具有 systemd 的 Linux 主机
  • 如果通过代理运行,请确保防火墙端口处于开放状态
  • 对 Yamaha 路由器设备的特权访问权限

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

  1. 登录 Google SecOps 控制台。
  2. 依次前往 SIEM 设置 > 收集代理
  3. 下载注入身份验证文件。将该文件安全地保存在将要安装 Bindplane 的系统上。

获取 Google SecOps 客户 ID

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

安装 Bindplane 代理

按照以下说明在 Windows 或 Linux 操作系统上安装 Bindplane 代理。

Windows 安装

  1. 以管理员身份打开命令提示符PowerShell
  2. 运行以下命令:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux 安装

  1. 打开具有 root 或 sudo 权限的终端。
  2. 运行以下命令:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

其他安装资源

如需了解其他安装选项,请参阅安装指南

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

  1. 访问配置文件:
    • 找到 config.yaml 文件。通常,它位于 Linux 上的 /etc/bindplane-agent/ 目录中或 Windows 上的安装目录中。
    • 使用文本编辑器(例如 nanovi 或记事本)打开该文件。
  2. 按如下方式修改 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: 'YAMAHA_ROUTER'
            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
    

为 Yamaha 路由器配置 Syslog

  1. 使用 SSH 或 CLI 连接到路由器。
  2. 将 Syslog 主机设置为 Bindplane 代理 IP:

    • 默认端口为 514/UDP
    • <BINDPLANE_IP> 替换为实际的 Bindplane 代理 IP 地址。
    syslog host <BINDPLANE_IP>
    
  3. 可选:设置 Syslog 功能和级别:

    syslog facility local0
    syslog info
    
  4. 保存配置,以确保更改在重新启动后仍然有效:

    save
    

为所需模块启用 Syslog 输出

  1. 为特定功能启用日志记录:

    • 防火墙(IP 过滤)日志记录:

      ip filter log on
      
    • NAT 日志记录:

      • 其中,1000 是您使用的 NAT 描述符编号(可根据需要进行调整)。
      nat descriptor log on 1000
      
    • PPPoE / WAN 连接日志记录:

      pppoe use log on
      
    • 如果您使用 DHCP WAN(而不是 PPPoE),请记录 DHCP 事件:

      dhcp service log on
      
    • 对于 IPsec VPN 日志记录:

      ipsec log on
      
    • 对于 L2TP 和 PPTP:

      l2tp log on
      pptp log on
      
    • 记录接口启动/关闭事件:

      log state on
      
    • 如果您使用链路监控,还可以为 ping keepalive 启用日志记录:

      ping keepalive log on
      
    • 为管理员权限权限(例如 SSH 或 Telnet)启用日志记录:

      console notice
      ssh notice
      telnet notice
      
    • 记录 DHCP 分配:

      dhcp service log on
      
    • DNS 日志记录(如果使用内置 DNS 转发器):

      dns service log on
      
    • 邮件转移日志记录(如果使用电子邮件提醒):

      smtp service log on
      
    • 动态 DNS 日志记录:

      ddns service log on
      
    • NTP 事件:

      ntpdate log on
      
    • 身份验证日志记录:

      auth log on
      
    • 半径日志记录:

      ppp use radius log on
      
  2. 保存配置以确保更改在重新启动后仍然有效:

    save
    

UDM 映射表

日志字段 UDM 映射 逻辑
data metadata.description 说明是从原始日志的 data 字段中提取的,使用的是 Grok 模式。根据日志消息的格式,使用不同的模式。示例:“initiate ISAKMP phase”“Connection closed”“succeeded for SSH”。
data metadata.event_timestamp 时间戳使用 grok 模式从原始日志的 data 字段中提取,然后使用 date 过滤条件转换为时间戳对象。支持 MMM dd HH:mm:ssMMM d HH:mm:ss 格式。
data principal.asset.hostname 主机名使用 grok 模式从原始日志的 data 字段中提取。
data principal.asset.ip 系统会使用 Grok 模式从原始日志的 data 字段中提取主 IP 地址。它同时映射到 principal.asset.ipprincipal.ip
data principal.hostname 主机名使用 grok 模式从原始日志的 data 字段中提取。
data principal.ip 系统会使用 Grok 模式从原始日志的 data 字段中提取主 IP 地址。它同时映射到 principal.asset.ipprincipal.ip
data principal.user.userid 用户 ID 是使用 Grok 模式从原始日志的 data 字段中提取的。
data target.asset.ip 目标 IP 地址使用 Grok 模式从原始日志的 data 字段中提取。
data target.ip 目标 IP 地址使用 Grok 模式从原始日志的 data 字段中提取。解析器逻辑会根据是否存在某些字段来确定事件类型。如果同时存在 principaltarget,则事件类型为 NETWORK_CONNECTION。如果存在 user,则事件类型为 USER_UNCATEGORIZED。如果仅存在 principal,则事件类型为 STATUS_UPDATE。否则,该值会默认为 GENERIC_EVENT。硬编码为“YAMAHA_ROUTER”。硬编码为“YAMAHA_ROUTER”。硬编码为“YAMAHA_ROUTER”。
log_type metadata.log_type 直接从原始日志的 log_type 字段复制。
timestamp timestamp 这是日志的提取时间,由 Chronicle 平台自动添加。它不是从原始日志中解析出来的。

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