Cómo recopilar registros de Tailscale

Se admite en los siguientes sistemas operativos:

En este documento, se explica cómo transferir registros de Tailscale a Google Security Operations con la función nativa de transmisión de registros de Amazon S3 de Tailscale. Tailscale genera datos operativos en forma de registros de auditoría de configuración y registros de flujo de red. Esta integración utiliza la capacidad de transmisión de S3 integrada de Tailscale para enviar automáticamente estos registros a Google SecOps para su análisis y supervisión.

Antes de comenzar

Asegúrate de cumplir con los siguientes requisitos previos:

  • Instancia de Google SecOps
  • Acceso con privilegios a la Consola del administrador de Tailscale (rol de propietario, administrador, administrador de red o administrador de TI)
  • Acceso con privilegios a AWS (S3, IAM)

Recopila los requisitos previos de Tailscale (información de la tailnet)

  1. Accede a la Consola del administrador de Tailscale.
  2. Anota el nombre de tu tailnet (por ejemplo, example.com o el nombre de tu organización).
  3. Asegúrate de tener el plan requerido:
    • Transmisión de registros de auditoría de configuración: Disponible en los planes Personal, Personal Plus y Enterprise.
    • Transmisión de registros de flujo de red: Solo disponible en el plan Enterprise.

Configura el bucket de AWS S3 y el IAM para Google SecOps

  1. Crea un bucket de Amazon S3 siguiendo esta guía del usuario: Cómo crear un bucket
  2. Guarda el Nombre y la Región del bucket para consultarlos en el futuro (por ejemplo, tailscale-logs).
  3. Crea un usuario siguiendo esta guía del usuario: Cómo crear un usuario de IAM.
  4. Selecciona el usuario creado.
  5. Selecciona la pestaña Credenciales de seguridad.
  6. Haz clic en Crear clave de acceso en la sección Claves de acceso.
  7. Selecciona Servicio de terceros como el Caso de uso.
  8. Haz clic en Siguiente.
  9. Opcional: Agrega una etiqueta de descripción.
  10. Haz clic en Crear clave de acceso.
  11. Haz clic en Descargar archivo CSV para guardar la clave de acceso y la clave de acceso secreta para usarlas más adelante.
  12. Haz clic en Listo.
  13. Selecciona la pestaña Permisos.
  14. Haz clic en Agregar permisos en la sección Políticas de permisos.
  15. Selecciona Agregar permisos.
  16. Selecciona Adjuntar las políticas directamente.
  17. Busca y selecciona la política AmazonS3FullAccess.
  18. Haz clic en Siguiente.
  19. Haz clic en Agregar permisos.

Configura la política y el rol de IAM para las cargas de S3

  1. En la consola de AWS, ve a IAM > Políticas > Crear política > pestaña JSON.
  2. Ingresa la siguiente política:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "AllowTailscalePutObjects",
          "Effect": "Allow",
          "Action": [
            "s3:PutObject",
            "s3:PutObjectAcl"
          ],
          "Resource": "arn:aws:s3:::tailscale-logs/*"
        }
      ]
    }
    
    • Reemplaza tailscale-logs si ingresaste un nombre de bucket diferente.
  3. Haz clic en Siguiente > Crear política.

  4. Ve a IAM > Roles > Crear rol > Política de confianza personalizada.

  5. Ingresa la siguiente política de confianza:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::982722776073:role/tailscale-log-streaming"
          },
          "Action": "sts:AssumeRole",
          "Condition": {
            "StringEquals": {
              "sts:ExternalId": "YOUR_TAILNET_NAME"
            }
          }
        }
      ]
    }
    
    • Reemplaza YOUR_TAILNET_NAME por el nombre real de tu tailnet.
  6. Haz clic en Siguiente.

  7. Adjunta la política que creaste en el paso 1.

  8. Nombra el rol TailscaleS3StreamingRole y haz clic en Crear rol.

  9. Copia el ARN del rol para usarlo en la configuración de Tailscale.

Configura la transmisión nativa de registros de S3 de Tailscale

Configura la transmisión de registros de auditoría de configuración

  1. En la Consola del administrador de Tailscale, ve a Registros > Registros de configuración.
  2. Haz clic en Iniciar transmisión.
  3. Selecciona Amazon S3 como destino.
  4. Proporciona los siguientes detalles de configuración:
    • ID de cuenta de AWS: Es el ID de su cuenta de AWS.
    • Nombre del bucket de S3: tailscale-logs.
    • ARN del rol: Es el ARN del rol de IAM que creaste.
    • Prefijo de clave de S3: tailscale/configuration/ (opcional).
  5. Haz clic en Iniciar transmisión.
  6. Verifica que el estado se muestre como Activo.

Configura la transmisión de registros de flujo de red (solo para el plan Enterprise)

  1. Si aún no están habilitados, ve a Configuración > Registros de flujo de red y habilita los registros de flujo de red para tu tailnet.
  2. Ve a Registros > Registros de flujo de red.
  3. Haz clic en Iniciar transmisión.
  4. Selecciona Amazon S3 como destino.
  5. Proporciona los siguientes detalles de configuración:
    • ID de cuenta de AWS: Tu ID de cuenta de AWS
    • Nombre del bucket de S3: tailscale-logs
    • ARN del rol: Es el ARN del rol de IAM que creaste.
    • Prefijo de clave de S3: tailscale/network/ (opcional)
  6. Haz clic en Iniciar transmisión.
  7. Verifica que el estado se muestre como Activo.

Opcional: Crea un usuario y claves de IAM con acceso de solo lectura para Google SecOps

  1. En la consola de AWS, ve a IAM > Usuarios > Agregar usuarios.
  2. Haz clic en Agregar usuarios.
  3. Proporciona los siguientes detalles de configuración:
    • Usuario: secops-reader
    • Tipo de acceso: Clave de acceso: Acceso programático
  4. Haz clic en Create user.
  5. Adjunta una política de lectura mínima (personalizada): Usuarios > secops-reader > Permisos > Agregar permisos > Adjuntar políticas directamente > Crear política.
  6. En el editor de JSON, ingresa la siguiente política:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": ["s3:GetObject"],
          "Resource": "arn:aws:s3:::tailscale-logs/*"
        },
        {
          "Effect": "Allow",
          "Action": ["s3:ListBucket"],
          "Resource": "arn:aws:s3:::tailscale-logs"
        }
      ]
    }
    
  7. Configura el nombre como secops-reader-policy.

  8. Ve a Crear política > busca o selecciona > Siguiente > Agregar permisos.

  9. Ve a Credenciales de seguridad > Claves de acceso > Crear clave de acceso.

  10. Descarga el archivo CSV (estos valores se ingresan en el feed).

Configura un feed en Google SecOps para transferir registros de Tailscale

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en + Agregar feed nuevo.
  3. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Tailscale logs).
  4. Selecciona Amazon S3 V2 como el Tipo de fuente.
  5. Selecciona Tailscale como el Tipo de registro.
  6. Haz clic en Siguiente.
  7. Especifica valores para los siguientes parámetros de entrada:
    • URI de S3: s3://tailscale-logs/tailscale/
    • Opciones de eliminación del código fuente: Selecciona la opción de eliminación según tu preferencia.
    • Antigüedad máxima del archivo: Incluye los archivos modificados en la cantidad de días especificada. El valor predeterminado es de 180 días.
    • ID de clave de acceso: Clave de acceso del usuario con acceso al bucket de S3.
    • Clave de acceso secreta: Es la clave secreta del usuario con acceso al bucket de S3.
    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.
    • Etiquetas de transferencia: Es la etiqueta que se aplica a los eventos de este feed.
  8. Haz clic en Siguiente.
  9. Revisa la nueva configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
exit_traf_src_port_label additional.fields Combinado
exit_traf_txBytes_label additional.fields Combinado
exit_traf_txPkts_label additional.fields Combinado
nodeId_label additional.fields Combinado
origin_label additional.fields Combinado
phy_traf_rxBytes_label additional.fields Combinado
phy_traf_rxPkts_label additional.fields Combinado
phy_traf_txBytes_label additional.fields Combinado
phy_traf_txPkts_label additional.fields Combinado
target1_id_label additional.fields Combinado
target1_type_label additional.fields Combinado
vir_traf_rxBytes_label additional.fields Combinado
vir_traf_rxPkts_label additional.fields Combinado
vir_traf_txBytes_label additional.fields Combinado
vir_traf_txPkts_label additional.fields Combinado
action extensions.auth.type Asignado: LOGIN → AUTHTYPE_UNSPECIFIED
start metadata.event_timestamp Se analizó como ISO8601
event_type metadata.event_type Asignada directamente
exit_traf.txPkts network.received_bytes Asignada directamente
index network.received_bytes Asignado: 0 → uinteger
phy_traf.rxBytes network.received_bytes Asignada directamente
phy_traf.rxPkts network.received_bytes Asignada directamente
exit_traf.txBytes network.sent_bytes Asignada directamente
index network.sent_bytes Asignado: 0 → uinteger
phy_traf.txBytes network.sent_bytes Asignada directamente
phy_traf.txPkts network.sent_bytes Asignada directamente
target1.name principal.asset.hostname Asignada directamente
src_ip principal.asset.ip Combinado
target1.name principal.hostname Asignada directamente
src_ip principal.ip Combinado
src_port principal.port Asignada directamente
action security_result.action_details Asignada directamente
action_details_label security_result.detection_fields Combinado
eventGroupID_label security_result.detection_fields Combinado
dst_ip target.asset.ip Combinado
dst_ip target.ip Combinado
dst_port target.port Asignada directamente
actor_loginName target.user.email_addresses Combinado
actor_display_name target.user.user_display_name Asignada directamente
actor_id target.user.userid Asignada directamente
N/A extensions.auth.type Constante: AUTHTYPE_UNSPECIFIED
N/A metadata.event_type Constante: GENERIC_EVENT

Registro de cambios

Consulta el registro de cambios de este analizador

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.