收集 Twingate VPN 日志

支持的语言:

概览

此 Twingate 解析器可从 Twingate VPN JSON 日志中提取字段、对其进行标准化处理,并将其映射到统一数据模型 (UDM)。它可处理各种事件类型,包括连接详情、用户信息、资源访问和中介中继,并使用供应商和产品信息等元数据来丰富数据。

准备工作

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

  • Google SecOps 实例。
  • 对 AWS IAM 和 S3 的特权访问权限。

配置 Amazon S3 存储桶

  1. 按照以下用户指南创建 Amazon S3 存储桶创建存储桶
  2. 保存存储桶名称区域以供日后参考。
  3. 按照以下用户指南创建用户创建 IAM 用户

  4. 选择创建的用户

  5. 选择安全凭据标签页。

  6. 访问密钥部分中,点击创建访问密钥

  7. 选择第三方服务作为使用情形

  8. 点击下一步

  9. 可选:添加说明标记。

  10. 点击创建访问密钥

  11. 点击下载 .csv 文件以保存访问密钥密钥,供日后参考。

  12. 点击完成

  13. 选择权限标签页。

  14. 权限政策部分中,点击添加权限

  15. 选择添加权限

  16. 选择直接附加政策

  17. 搜索 AmazonS3FullAccess 政策。

  18. 选择相应政策。

  19. 点击下一步

  20. 点击添加权限

配置 Twingate 与 Amazon S3 的同步

  1. 前往 Twingate 管理控制台。
  2. 依次前往设置 > 报告
  3. 点击 Sync to S3 Bucket
  4. 配置 S3 同步:

    • 存储桶名称:提供 S3 存储桶的名称。

    • 访问密钥 ID:输入访问密钥。

    • 私有访问密钥:输入私有密钥。

  5. 点击开始同步

设置 Feed

您可以通过两种不同的入口点在 Google SecOps 平台中设置 Feed:

  • SIEM 设置 > Feed
  • 内容中心 > 内容包

通过“SIEM 设置”>“Feed”设置 Feed

如需配置 Feed,请按以下步骤操作:

  1. 依次前往 SIEM 设置 > Feed
  2. 点击添加新 Feed
  3. 在下一页上,点击配置单个 Feed
  4. Feed 名称字段中,输入 Feed 的名称,例如 Twingate 日志
  5. 选择 Amazon S3 作为来源类型
  6. 选择 Twingate 作为日志类型
  7. 点击下一步
  8. 为以下输入参数指定值:

    • 区域:Amazon S3 存储桶所在的区域。
    • S3 URI:存储桶 URI。s3:/BUCKET_NAME 替换以下内容:
      • BUCKET_NAME:相应存储桶的名称。
    • URI is a:选择 Directory
    • 来源删除选项:根据您的偏好设置选择删除选项。
    • 访问密钥 ID:具有 S3 存储桶访问权限的用户访问密钥。
    • 私有访问密钥:有权访问 S3 存储桶的用户私有密钥。
  9. 点击下一步

  10. “Finalize”界面中查看新的 Feed 配置,然后点击提交

设置来自内容中心的 Feed

为以下字段指定值:

  • 区域:Amazon S3 存储桶所在的区域。

    • S3 URI:存储桶 URI。s3:/BUCKET_NAME 替换以下内容:
      • BUCKET_NAME:相应存储桶的名称。
    • URI is a:选择 Directory
    • 来源删除选项:根据您的偏好设置选择删除选项。
    • 访问密钥 ID:具有 S3 存储桶访问权限的用户访问密钥。
    • 私有访问密钥:有权访问 S3 存储桶的用户私有密钥。

高级选项

  • Feed 名称:用于标识 Feed 的预填充值。
  • 来源类型:用于将日志收集到 Google SecOps 中的方法。
  • 资源命名空间:与 Feed 关联的命名空间。
  • 提取标签:应用于相应 Feed 中所有事件的标签。

字段映射参考

此解析器会将 JSON 格式的原始 Twingate 日志转换为 UDM。它会对数据进行标准化处理并提取相关信息,然后将其映射到相应的 UDM 字段。

UDM 映射表

日志字段 UDM 映射 逻辑
connector.id read_only_udm.additional.fields[].key 设置为“connector_id”。
connector.id read_only_udm.additional.fields[].value.string_value 来自 connector.id 的值。
connector.name read_only_udm.additional.fields[].key 设置为“connector_name”。
connector.name read_only_udm.additional.fields[].value.string_value 来自 connector.name 的值。
connection.bytes_received read_only_udm.network.received_bytes 来自 connection.bytes_received 的值(已转换为无符号整数)。
connection.bytes_transferred read_only_udm.network.sent_bytes 来自 connection.bytes_transferred 的值(已转换为无符号整数)。
connection.client_ip read_only_udm.principal.asset.ip 来自 connection.client_ip 的值。
connection.client_ip read_only_udm.principal.ip 来自 connection.client_ip 的值。
connection.protocol read_only_udm.network.ip_protocol 来自 connection.protocol 的值(已转换为大写)。
device.id read_only_udm.principal.user.product_object_id 来自 device.id 的值。
event.id read_only_udm.metadata.event_id 来自 event.id 的值
event.time read_only_udm.metadata.event_timestamp.seconds event.time 中时间戳的秒部分。
event.type read_only_udm.event.type 来自 event.type 的值。
event.version read_only_udm.metadata.product_version 来自 event.version 的值。
relays[].ip read_only_udm.intermediary.ip 来自 relays[].ip 的值。
relays[].name read_only_udm.intermediary.hostname 来自 relays[].name 的值。
relays[].port read_only_udm.intermediary.port 来自 relays[].port 的值(已转换为整数)。
remote_network.id read_only_udm.network.session_id 来自 remote_network.id 的值。
remote_network.name read_only_udm.network.dhcp.sname 来自 remote_network.name 的值。
resource.address read_only_udm.principal.asset.hostname 来自 resource.address 的值。
resource.address read_only_udm.principal.hostname 来自 resource.address 的值。
resource.id read_only_udm.resource.product_object_id 来自 resource.id 的值。
resource.port read_only_udm.principal.port 来自 resource.port 的值(已转换为整数)。
status read_only_udm.security_result.summary 来自 status 的值。
time read_only_udm.event.timestamp.seconds time 中时间戳的秒部分。
user.email read_only_udm.principal.user.email_addresses 来自 user.email 的值。
user.id read_only_udm.principal.user.userid 来自 user.id 的值。

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