Recopila registros de Zscaler Tunnel
En este documento, se explica cómo exportar registros de Zscaler Tunnel configurando un feed de Google Security Operations y cómo los campos de registro se asignan a los campos del modelo de datos unificados (UDM) de Google SecOps.
Para obtener más información, consulta la descripción general de la transferencia de datos a Google SecOps.
Una implementación típica consta de Zscaler Tunnel y el feed de webhook de Google SecOps configurado para enviar registros a Google SecOps. Cada implementación de cliente puede diferir y ser más compleja.
La implementación contiene los siguientes componentes:
Zscaler Tunnel: Es la plataforma desde la que recopilas registros.
Feed de Google SecOps: Es el feed de Google SecOps que recupera registros de Zscaler Tunnel y escribe registros en Google SecOps.
Google SecOps: Retiene y analiza los registros.
Una etiqueta de transferencia identifica el analizador que normaliza los datos de registro sin procesar al formato estructurado del UDM. La información de este documento se aplica al analizador con la etiqueta ZSCALER_TUNNEL
.
Antes de comenzar
- Asegúrate de tener acceso a la consola de acceso a Internet de Zscaler. Para obtener más información, consulta la Ayuda de ZIA de acceso seguro a Internet y SaaS.
- Asegúrate de usar la versión 1.0 o 2.0 de Zscaler Tunnel.
- Asegúrate de que todos los sistemas de la arquitectura de implementación estén configurados con la zona horaria UTC.
- Asegúrate de tener la clave de API necesaria para completar la configuración del feed en Google SecOps. Para obtener más información, consulta Configura claves de API.
Configura un feed de transferencia en Google SecOps para transferir registros de Zscaler Tunnel
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Agregar nueva.
- En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Registros de túneles de Zscaler).
- Selecciona Webhook como el Tipo de origen.
- Selecciona Zscaler Tunnel como el Tipo de registro.
- Haz clic en Siguiente.
- Opcional: Especifica valores para los siguientes parámetros de entrada:
- Delimitador de división: Es el delimitador que se usa para separar las líneas de registro (déjalo en blanco si no se usa un delimitador).
- Espacio de nombres del activo: Es el espacio de nombres del activo.
- Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed.
- Haz clic en Siguiente.
- Revisa la configuración de tu nuevo feed en la pantalla Finalizar y, luego, haz clic en Enviar.
- Haz clic en Generate Secret Key para generar una clave secreta que autentique este feed.
Configura el túnel de Zscaler
- En la consola de acceso a Internet de Zscaler, ve a Administración > Servicio de transmisión de Nanolog > Feeds de NSS de Cloud.
- Haz clic en Agregar feed de NSS de Cloud.
- Ingresa un nombre para el feed en el campo Nombre del feed.
- Selecciona NSS para túnel en Tipo de NSS.
- Selecciona el estado de la lista Estado para activar o desactivar el feed de NSS.
- Mantén el valor en el menú desplegable SIEM Rate como Unlimited. Para suprimir el flujo de salida debido a licencias o a otras restricciones, cambia el valor.
- Selecciona Otro en la lista Tipo de SIEM.
- Selecciona Disabled en la lista OAuth 2.0 Authentication.
- Ingresa un límite de tamaño para una carga útil de solicitud HTTP individual en las prácticas recomendadas de SIEM en Max Batch Size (por ejemplo, 512 KB).
Ingresa la URL HTTPS del extremo de la API de Chronicle en la URL de la API con el siguiente formato:
https://<CHRONICLE_REGION>-chronicle.googleapis.com/v1alpha/projects/<GOOGLE_PROJECT_NUMBER>/locations/<LOCATION>/instances/<CUSTOMER_ID>/feeds/<FEED_ID>:importPushLogs
CHRONICLE_REGION
: Es la región en la que se aloja tu instancia de Google SecOps (por ejemplo, EE.UU.).GOOGLE_PROJECT_NUMBER
: Número de proyecto de BYOP (obtén este número de C4).LOCATION
: Región de Google SecOps (por ejemplo, EE.UU.).CUSTOMER_ID
: ID de cliente de SecOps de Google (obtén este ID de C4).FEED_ID
: Es el ID del feed que se muestra en la IU del feed en el nuevo webhook creado.
URL de API de muestra:
https://us-chronicle.googleapis.com/v1alpha/projects/12345678910/locations/US/instances/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/feeds/yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy:importPushLogs
Haz clic en Agregar encabezado HTTP para agregar más encabezados HTTP con claves y valores.
Por ejemplo:
- Clave:
X-goog-api-key
- Valor: Clave de API generada en las Credenciales de API de Google Cloud BYOP
- Clave:
Selecciona Túnel en la lista Tipos de registro.
Selecciona JSON en la lista Tipo de salida del feed.
Establece el carácter de escape del feed en
, \ "
.Para agregar un campo nuevo al Formato de salida del feed, selecciona Personalizado en la lista Tipo de salida del feed.
Copia y pega el Formato de salida del feed y agrega campos nuevos. Asegúrate de que los nombres de las claves coincidan con los nombres de los campos reales.
Los siguientes son los formatos de salida de feeds predeterminados:
Para la fase 1 de IKE:
\{ "sourcetype" : "zscalernss-tunnel", "event" : \{"datetime":"%s{datetime}","Recordtype":"%s{tunnelactionname}","tunneltype":"IPSEC IKEV %d{ikeversion}","user":"%s{vpncredentialname}","location":"%s{elocationname}","sourceip":"%s{sourceip}","destinationip":"%s{destvip}","sourceport":"%d{srcport}","destinationport":"%d{dstport}","lifetime":"%d{lifetime}","ikeversion":"%d{ikeversion}","spi_in":"%lu{spi_in}","spi_out":"%lu{spi_out}","algo":"%s{algo}","authentication":"%s{authentication}","authtype":"%s{authtype}","recordid":"%d{recordid}"\}\}
Para la fase 2 de IKE:
\{ "sourcetype" : "zscalernss-tunnel", "event" : \{"datetime":"%s{datetime}","Recordtype":"%s{tunnelactionname}","tunneltype":"IPSEC IKEV %d{ikeversion}","user":"%s{vpncredentialname}","location":"%s{elocationname}","sourceip":"%s{sourceip}","destinationip":"%s{destvip}","sourceport":"%d{srcport}","sourceportstart":"%d{srcportstart}","destinationportstart":"%d{destportstart}","srcipstart":"%s{srcipstart}","srcipend":"%s{srcipend}","destinationipstart":"%s{destipstart}","destinationipend":"%s{destipend}","lifetime":"%d{lifetime}","ikeversion":"%d{ikeversion}","lifebytes":"%d{lifebytes}","spi":"%d{spi}","algo":"%s{algo}","authentication":"%s{authentication}","authtype":"%s{authtype}","protocol":"%s{protocol}","tunnelprotocol":"%s{tunnelprotocol}","policydirection":"%s{policydirection}","recordid":"%d{recordid}"\}\}
Para el evento de túnel:
\{ "sourcetype" : "zscalernss-tunnel", "event" : \{"datetime":"%s{datetime}","Recordtype":"%s{tunnelactionname}","tunneltype":"%s{tunneltype}","user":"%s{vpncredentialname}","location":"%s{elocationname}","sourceip":"%s{sourceip}","destinationip":"%s{destvip}","sourceport":"%d{srcport}","event":"%s{event}","eventreason":"%s{eventreason}","recordid":"%d{recordid}"\}\}
Para Sample:
\{ "sourcetype" : "zscalernss-tunnel", "event" : \{"datetime":"%s{datetime}","Recordtype":"%s{tunnelactionname}","tunneltype":"%s{tunneltype}","user":"%s{vpncredentialname}","location":"%s{elocationname}","sourceip":"%s{sourceip}","destinationip":"%s{destvip}","sourceport":"%d{srcport}","txbytes":"%lu{txbytes}","rxbytes":"%lu{rxbytes}","dpdrec":"%d{dpdrec}","recordid":"%d{recordid}"\}\}
Selecciona la zona horaria para el campo Time en el archivo de salida en la lista Timezone. De forma predeterminada, la zona horaria se establece en la de tu organización.
Revisa la configuración establecida.
Haz clic en Guardar para probar la conectividad. Si la conexión se realiza correctamente, aparecerá una marca de verificación verde acompañada del mensaje Test Connectivity Successful: OK (200).
Para obtener más información sobre los feeds de Google SecOps, consulta la documentación de los feeds de Google SecOps. Para obtener información sobre los requisitos de cada tipo de feed, consulta Configuración de feeds por tipo.
Si tienes problemas cuando creas feeds, comunícate con el equipo de asistencia de SecOps de Google.
Tabla de asignación de UDM
Referencia de asignación de campos: ZSCALER_TUNNEL
En la siguiente tabla, se enumeran los campos de registro del tipo de registro ZSCALER_TUNNEL
y sus campos de UDM correspondientes.
Log field | UDM mapping | Logic |
---|---|---|
algo |
additional.fields[algo] |
|
authtype |
additional.fields[authtype] |
|
authentication |
additional.fields[authentication] |
|
dd |
additional.fields[dd] |
|
day |
additional.fields[day] |
|
destinationportstart |
additional.fields[destinationportstart] |
|
dpdrec |
additional.fields[dpdrec] |
|
eventreason |
additional.fields[eventreason] |
|
hh |
additional.fields[hh] |
|
ikeversion |
additional.fields[ikeversion] |
|
lifebytes |
additional.fields[lifebytes] |
|
mm |
additional.fields[mm] |
|
mon |
additional.fields[mon] |
|
mth |
additional.fields[mth] |
|
olocationname |
additional.fields[olocationname] |
|
ovpncredentialname |
additional.fields[ovpncredentialname] |
|
ss |
additional.fields[ss] |
|
sourcetype |
additional.fields[sourcetype] |
|
spi_in |
additional.fields[spi_in] |
|
spi_out |
additional.fields[spi_out] |
|
sourceportstart |
additional.fields[sourceportstart] |
|
tz |
additional.fields[tz] |
|
tunnelprotocol |
additional.fields[tunnelprotocol] |
|
tunneltype |
additional.fields[tunneltype] |
|
vendorname |
additional.fields[vendorname] |
|
yyyy |
additional.fields[yyyy] |
|
spi |
additional.fields[spi] |
|
event |
metadata.description |
|
datetime |
metadata.event_timestamp |
|
|
metadata.event_type |
If (the srcipstart log field value is not empty or the srcipend log field value is not empty or the sourceip log field value is not empty) and (the destinationipstart log field value is not empty or the destinationip log field value is not empty or the destinationipend log field value is not empty), then the metadata.event_type UDM field is set to NETWORK_CONNECTION .Else, if the srcipstart log field value is not empty or the srcipend log field value is not empty or the sourceip log field value is not empty, then the metadata.event_type UDM field is set to STATUS_UPDATE .Else, the metadata.event_type UDM field is set to GENERIC_EVENT . |
Recordtype |
metadata.product_event_type |
|
recordid |
metadata.product_log_id |
|
|
metadata.product_name |
The metadata.product_name UDM field is set to ZSCALER_TUNNEL . |
|
metadata.vendor_name |
The metadata.vendor_name UDM field is set to ZSCALER . |
|
network.direction |
If the policydirection log field value matches the regular expression pattern (?i)Inbound , then the network.direction UDM field is set to INBOUND .Else, if the policydirection log field value matches the regular expression pattern (?i)Outbound , then the network.direction UDM field is set to OUTBOUND . |
protocol |
network.ip_protocol |
If the protocol log field value contain one of the following values, then the protocol log field is mapped to the network.ip_protocol UDM field.
|
rxbytes |
network.received_bytes |
|
rxpackets |
network.received_packets |
|
txbytes |
network.sent_bytes |
|
txpackets |
network.sent_packets |
|
lifetime |
network.session_duration.seconds |
|
srcipstart |
principal.ip |
|
sourceip |
principal.ip |
|
srcipend |
principal.ip |
|
location |
principal.location.name |
|
sourceport |
principal.port |
|
user |
principal.user.userid |
|
destinationipstart |
target.ip |
|
destinationip |
target.ip |
|
destinationipend' |
target.ip |
|
destinationport |
target.port |
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.