Usa el registro de reglas de política de firewall

El registro de reglas de la política de firewall te permite auditar, verificar y analizar los efectos de tus reglas de firewall. Por ejemplo, puedes determinar si una regla de firewall diseñada para denegar tráfico está funcionando según lo previsto. El registro también es útil si necesitas determinar cuántas conexiones se ven afectadas por una regla de firewall determinada.

Aprende a habilitar y a inhabilitar el registro de reglas de políticas de firewall para las reglas de firewall de la nube privada virtual (VPC). Si deseas obtener instrucciones para registrar reglas de política de firewall, consulta Usa reglas y políticas de firewall jerárquicas.

También puedes aprender a ver los registros generados. Para obtener más información sobre lo que se registra, los ejemplos de registro y los formatos de registro, consulta la descripción general del registro de reglas de políticas de firewall.

Si habilitas el registro en una regla de firewall, puedes ver estadísticas y recomendaciones para la regla desde Estadísticas de firewall. Para obtener más información, consulta Firewall Insights en la documentación de Network Intelligence Center.

Permisos

Para modificar las reglas de firewall o los registros de acceso, los principales de IAM necesitan una de las siguientes funciones.

Tarea Función requerida
Crear, borrar o actualizar las reglas de firewall Propietario o editor del proyecto o rol de administrador de seguridad (roles/compute.securityAdmin)
Ver registros Propietario, editor o visualizador del proyecto o rol de visualizador de registros (roles/logging.viewer)
Para obtener detalles sobre los permisos y los roles de IAM de Logging, consulta la Guía de control de acceso de Logging.

Habilita e inhabilita el registro de reglas de política de firewall

Cuando creas una regla de firewall, puedes habilitar el registro para esa regla. Para obtener más información, consulta Crea reglas de firewall.

Si deseas habilitar o inhabilitar el registro de las reglas de políticas de firewall para una regla existente, sigue estas instrucciones. Cuando habilitas el registro, puedes controlar si se incluyen los campos de metadatos. Si los omites, puedes ahorrar en costos de almacenamiento.

Habilita el registro de reglas de política de firewall

Console

  1. En la consola de Cloud de Confiance , ve a la página Políticas de firewall.

    Ir a Políticas de firewall

  2. En la columna Registros, determina si el registro de firewall está activado o desactivado para cada regla de firewall.

  3. Para habilitar el registro de una o más reglas de firewall, selecciona la casilla de verificación junto a cada regla que deseas actualizar.

  4. En la barra de acciones de Reglas de firewall de VPC, haz clic en Configurar registros.

  5. En el cuadro de diálogo Configurar registros, selecciona Activar.

  6. Para omitir los campos de metadatos, expande Mostrar detalles de registros y, luego, desmarca la casilla de verificación Incluir metadatos.

  7. Haga clic en Guardar configuración.

gcloud

gcloud compute firewall-rules update RULE_NAME \
    --enable-logging \
    --logging-metadata=LOGGING_METADATA

Reemplaza lo siguiente:

  • RULE_NAME: Es el nombre de la regla de firewall.
  • LOGGING_METADATA: Indica si el registro de reglas de políticas de firewall incluye campos de metadatos en los registros de reglas de firewall. Puedes configurar este campo solo si el registro está habilitado. El valor debe ser exclude-all o include-all. De forma predeterminada, se incluyen los campos de metadatos.

Para obtener más información, consulta la documentación de referencia del SDK.

Terraform

Puedes usar el recurso Terraform para crear una regla de firewall con el registro habilitado.

resource "google_compute_firewall" "rules" {
  project     = var.project_id # Replace this with your project ID in quotes
  name        = "my-firewall-rule"
  network     = "default"
  description = "Creates firewall rule targeting tagged instances"

  log_config {
    metadata = "INCLUDE_ALL_METADATA"
  }

  allow {
    protocol = "tcp"
    ports    = ["80", "8080", "1000-2000"]
  }
  target_tags = ["web"]
}

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.

API

Habilita el registro de reglas de política de firewall en una regla de firewall existente.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls/RULE_NAME
{
  "name": "RULE_NAME",
  "logConfig": {
    "enable": true,
    "metadata": "LOGGING_METADATA"
  }
}

Reemplaza los marcadores de posición por valores válidos:

  • PROJECT_ID es el ID del proyecto en el que se encuentra la regla de firewall.
  • RULE_NAME: Es el nombre de la regla de firewall.
  • LOGGING_METADATA: Indica si el registro de reglas de políticas de firewall incluye campos de metadatos en los registros de reglas de firewall. Puedes configurar este campo solo si el registro está habilitado. El valor debe ser exclude-all o include-all. De forma predeterminada, se incluyen los campos de metadatos.

Para obtener más información, consulta el método firewalls.patch.

Inhabilita el registro de reglas de política de firewall

Console

  1. En la consola de Cloud de Confiance , ve a la página Políticas de firewall.

    Ir a Políticas de firewall

  2. En la columna Registros, determina si el registro de firewall está activado o desactivado para cada regla de firewall.

  3. Para inhabilitar el registro de una o más reglas de firewall, selecciona la casilla de verificación junto a cada regla que deseas actualizar.

  4. En la barra de acciones de Reglas de firewall de VPC, haz clic en Configurar registros.

  5. En el cuadro de diálogo Configurar registros, selecciona Desactivar y haz clic en Guardar configuración.

gcloud

gcloud compute firewall-rules update RULE_NAME \
    --no-enable-logging

Reemplaza RULE_NAME por el nombre de la regla de firewall.

API

Inhabilita el registro de reglas de política de firewall en una regla de firewall existente.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls/RULE_NAME
{
  "name": "RULE_NAME",
  "logConfig": {
    "enable": false
  }
}

Reemplaza lo siguiente:

  • PROJECT_ID es el ID del proyecto en el que se encuentra la regla de firewall.
  • RULE_NAME: Es el nombre de la regla de firewall.

Para obtener más información, consulta el método firewalls.patch.

Ver registros

Los registros de las reglas de firewall se crean en el proyecto que aloja la red que contiene las instancias de VM y las reglas de firewall. Con la VPC compartida, las instancias de VM se crean en los proyectos de servicio, pero usan una red de VPC compartida ubicada en el proyecto host. Los registros de las reglas de firewall se guardan en ese proyecto host.

Para ver los registros de las reglas de firewall, usa la sección Explorador de registros de la consola de Cloud de Confiance .

Las siguientes consultas demuestran cómo puedes buscar eventos de firewall específicos.

Ver todos los registros de firewall

Para ver los registros de firewall, elige la opción 1 o la opción 2.

Opción 1

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Recurso.

  3. En la lista Seleccionar recurso, haz clic en Subred y, luego, en Aplicar.

  4. Haz clic en Nombre del registro y, luego, en la lista, selecciona firewall.

  5. Haz clic en Aplicar.

Opción 2

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Consulta.

  3. Si no ves el campo del editor de consultas en el panel Consulta, haz clic en el botón de activar o desactivar Mostrar consulta.

  4. Pega lo siguiente en el campo del Editor de consultas en el panel Consulta. Reemplaza PROJECT_ID por el ID del proyecto.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    
  5. Haga clic en Ejecutar consulta.

Visualiza los registros de subredes específicas

Para ver los registros de firewall de subredes específicas, elige la opción 1 o la opción 2.

Opción 1

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Recurso.

  3. En la lista Seleccionar recurso, haz clic en Subred.

  4. Selecciona la subred cuyos registros deseas ver y, luego, haz clic en Aplicar.

  5. Haz clic en Nombre del registro y, luego, en la lista, selecciona firewall.

  6. Haz clic en Aplicar.

Opción 2

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Consulta.

  3. Si no ves el campo del editor de consultas en el panel Consulta, haz clic en el botón de activar o desactivar Mostrar consulta.

  4. Pega lo siguiente en el campo del Editor de consultas en el panel Consulta. Reemplaza PROJECT_ID por el ID de tu proyecto y SUBNET_NAME por tu subred.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    resource.labels.subnetwork_name="SUBNET_NAME"
    
  5. Haz clic en Ejecutar consulta.

Visualiza los registros de VMs específicas

Para ver los registros de firewall de VMs específicas, usa la opción 1 o la opción 2.

Opción 1

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Recurso.

  3. En la lista Seleccionar recurso, haz clic en Instancia de VM.

  4. Selecciona la instancia de la que deseas ver los registros y haz clic en Aplicar.

  5. Haz clic en Nombre del registro y, luego, en la lista, selecciona firewall.

  6. Haz clic en Aplicar.

Opción 2

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Consulta.

  3. Si no ves el campo del editor de consultas en el panel Consulta, haz clic en el botón de activar o desactivar Mostrar consulta.

  4. Pega lo siguiente en el campo del Editor de consultas en el panel Consulta. Reemplaza PROJECT_ID por el ID del proyecto y INSTANCE_ID por el ID de la VM de la que deseas ver los registros.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    jsonPayload.instance.vm_name="INSTANCE_ID"
    
  5. Haga clic en Ejecutar consulta.

Visualiza los registros de las conexiones de un país específico

Para ver los registros del firewall de un país específico, haz lo siguiente:

  1. En la consola de Cloud de Confiance , accede a la página Explorador de registros.

    Ve al Explorador de registros

  2. Haz clic en Consulta.

  3. Si no ves el campo del editor de consultas en el panel Consulta, haz clic en el botón de activar o desactivar Mostrar consulta.

  4. Pega lo siguiente en el campo del Editor de consultas en el panel Consulta. Reemplaza PROJECT_ID por el ID del proyecto y COUNTRY por el código ISO 3166-1alpha-3.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    jsonPayload.remote_location.country=COUNTRY
    

Exporta registros

Para exportar registros de reglas de firewall, consulta Configura y administra receptores.

Puedes usar las consultas de ejemplo para limitar los registros que exportas.

Tabla de interacciones

  • En el caso de la comunicación de VM a VM, ambas VM pueden generar registros, según sus respectivas reglas de firewall.
  • La conexión registrada incluye paquetes que circulan en ambos sentidos si el firewall permitió el paquete inicial.
  • Para una VM determinada, las conexiones entrantes se comparan con las reglas de firewall configuradas en esas VM, y las conexiones salientes se comparan con la regla de firewall de salida configurada en esa VM.
  • Una conexión permitida que coincide con una regla de firewall con la indicación "permitir y registrar" se registra solo una vez. La entrada de registro no se repite cada 5 segundos, incluso si la conexión perdura.
  • Una conexión denegada que coincide con una regla de firewall con la indicación "denegada y registrar" repite la entrada de registro cada 5 segundos mientras haya paquetes observados en esa conexión denegada.
  • Si habilitas el registro en una regla de firewall que coincide con una conexión TCP o UDP ya activa, no se generará una nueva entrada de registro. Solo se crea una entrada de registro si la conexión permanece inactiva durante al menos 10 minutos y se envía un paquete nuevo en la misma conexión. Para el tráfico continuo con períodos de inactividad inferiores a 10 minutos, solo se genera una entrada de registro para la conexión.

En esta tabla se muestra el comportamiento del registro de firewall desde el punto de vista de una VM única.

Si una VM1 tiene una regla de entrada R1 que coincide con los paquetes y una regla de salida R2 que también coincide con los paquetes, el comportamiento del registro de firewall es el siguiente:

La VM1 tiene una regla de entrada R1 (coincide con los paquetes) La VM1 tiene una regla de salida R2 (coincide con los paquetes) Dirección de conexión Acción Registro
Permitir + registrar Permitir Entrada Permitir Una entrada de registro:
disposition=allow, rule=R1
Rechazar
Permitir + registrar
Denegar + registrar
Permitir Permitir Entrada Permitir Sin registro
Rechazar
Permitir + registrar
Denegar + registrar
Denegar + registrar N/A Entrada Rechazar Una entrada de registro cada 5 segundos:
disposition=deny, rule=R1
Rechazar N/A Entrada Rechazar Sin registro
Permitir Permitir + registrar Salida Permitir Una entrada de registro:
disposition=allow, rule=R2
Rechazar
Permitir + registrar
Denegar + registrar
Permitir Permitir Salida Permitir Sin registro
Rechazar
Permitir + registrar
Denegar + registrar
N/A Denegar + registrar Salida Rechazar Una entrada de registro cada 5 segundos:
disposition=deny, rule=R2
N/A Rechazar Salida Rechazar Sin registro

Ten en cuenta que la entrada y salida son simétricas.

A continuación, se incluye una descripción detallada de la semántica de los registros de firewall:

  • Permitir + registrar (el registro es compatible con TCP y UDP)

    • La conexión iniciada en la dirección en la que se aplica la regla crea un registro único.
    • Se permite el tráfico de respuesta debido al seguimiento de la conexión. El tráfico de respuesta no genera ningún registro, independientemente de las reglas de firewall en esa dirección.
    • Si la conexión expira desde el firewall (inactiva durante 10 minutos o RST de TCP recibido), es posible que otro paquete en cualquier dirección active el registro.
    • El registro se basa en 5 tuplas. Los marcadores de TCP no influyen en el comportamiento del registro.
  • Denegar + registrar (el registro es compatible con TCP y UDP)

    • Los paquetes se descartan (no se inicia ninguna conexión).
    • Cada paquete que corresponde a una tupla única de 5 se registra como un intento de conexión con errores.
    • La misma tupla de 5 se vuelve a registrar cada 5 segundos si continúa recibiendo paquetes.

¿Qué sigue?