Configura actualizaciones por lotes en las reglas de políticas de firewall

En esta página, se explica cómo configurar la actualización por lotes para todas las reglas de la política de firewall (políticas de firewall jerárquicas y de red). Para realizar la actualización por lotes, puedes usar Google Cloud CLI o la API de Compute Engine.

Para obtener más información sobre las actualizaciones por lotes, consulta Descripción general.

Si usas gcloud CLI para actualizar por lotes las reglas de la política de firewall, usa los siguientes comandos de gcloud CLI:

  • export-rules: Te permite exportar la configuración de las reglas de la política de firewall a un archivo YAML. En el archivo YAML, puedes agregar, modificar y quitar la configuración de las reglas de la política de firewall según tus requisitos.

  • import-rules: Te permite importar el archivo de configuración de las reglas de la política de firewall modificadas. Esto reemplaza las reglas existentes de la política de firewall especificada.

Si usas APIs de REST para actualizar por lotes las reglas de la política de firewall, usa el método patch. El método patch te permite reemplazar todas las reglas de la política de firewall proporcionando el campo rules en la solicitud. No necesitas crear un archivo YAML. Cuando uses el método patch, mantén las reglas predeterminadas de goto_next con la prioridad más baja.

Antes de comenzar

Configura la autenticación si aún no lo hiciste. La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las APIs de Trusted Cloud by S3NS . Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine como se describe en esta sección.

Console

Cuando usas la Trusted Cloud consola para acceder a los servicios y las APIs de Trusted Cloud by S3NS , no necesitas configurar la autenticación.

gcloud

  1. Después de instalar Google Cloud CLI, inicialízala con la ejecución del siguiente comando:

    
    gcloud init
    
    

    Si usas un proveedor de identidad externo (IdP), primero debes acceder a la CLI de gcloud con tu identidad federada.

  2. Establece la región y zona predeterminadas en tu cliente local.

REST

Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.

Después de instalar Google Cloud CLI, inicialízala con la ejecución del siguiente comando:


gcloud init

Si usas un proveedor de identidad externo (IdP), primero debes acceder a la CLI de gcloud con tu identidad federada.

Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación deTrusted Cloud by S3NS .

Crea un archivo YAML

Puedes usar el comando export-rules para exportar las reglas de políticas de firewall existentes a un archivo YAML. Para obtener más información, consulta Cómo exportar una regla de política de firewall. El archivo YAML exportado incluye las reglas goto_next predeterminadas con la prioridad más baja (reglas con prioridad superior o igual a 2147483644). Asegúrate de no modificar estas reglas goto_next predeterminadas.

Sin embargo, si no quieres usar el comando export-rules, también puedes crear un archivo YAML nuevo de forma manual para editar las reglas. Para crear un archivo YAML nuevo de forma manual, haz lo siguiente:

  1. Crea un archivo YAML RULES_YAML_FILE. Reemplaza RULES_YAML_FILE por una contraseña de tu elección.

  2. Agrega el campo rules al archivo YAML. El campo rules contiene una lista de las reglas de tu política de firewall. Para obtener un esquema que describa el formato de exportación o importación, consulta CLOUDSDKROOT/lib/googlecloudsdk/schemas/compute/beta/FirewallPolicy.yaml. Donde CLOUDSDKROOT es el directorio de instalación de Google Cloud CLI.

    A continuación, se muestra un ejemplo de un esquema YAML.

        rules:
        -action: deny
         description:
         priority: 1
         disabled: false
         enable-logging: false
         kind: compute#firewallPolicyRule
         ...
        -action: goto_next
         priority: 2
         disabled: false
         enable-logging: false
         ...
      

    Para modificar las reglas de políticas de firewall, consulta Modifica las reglas de políticas de firewall.

Exporta la regla de política de firewall

Puedes iniciar actualizaciones mediante la CLI de gcloud o la API de Compute Engine.

Cómo exportar una política de firewall jerárquica

Exporta las reglas de la política de firewall de la política de firewall jerárquica.

gcloud

Para exportar reglas de la política de firewall jerárquica, usa el comando gcloud compute firewall-policies export-rules:

gcloud compute firewall-policies export-rules FIREWALL_POLICY \
    --destination=DESTINATION \
    --organization=ORGANIZATION

Reemplaza lo siguiente:

  • FIREWALL_POLICY: Es el nombre corto o el ID de la política de firewall jerárquica desde la que deseas exportar reglas.
  • DESTINATION: Es la ruta de acceso a un archivo YAML en el que se exportará la configuración.
  • ORGANIZATION: Es la organización en la que se actualizará la política de firewall de la organización. Se debe establecer si FIREWALL_POLICY es un nombre corto.

API

Para exportar las reglas existentes de la política de firewall jerárquica, usa el método firewallPolicies.get en la API de Compute Engine:

  GET https://compute.googleapis.com/compute/v1/locations/global/firewallPolicy/FIREWALL_POLICY_NAME
  

Reemplaza lo siguiente:

Exporta la política de firewall de red

Exporta reglas de firewall de la política de firewall de red.

gcloud

Para exportar la configuración de las reglas de la política de firewall de red a un archivo, usa el comando gcloud compute network-firewall-policies export-rules:

gcloud compute network-firewall-policies export-rules FIREWALL_POLICY \
    --destination=RULES_YAML_FILE_PATH \
    --global | --region=REGION

Reemplaza lo siguiente:

  • FIREWALL_POLICY: Es el nombre de la política de firewall de red desde la que se exportarán las reglas.
  • RULES_YAML_FILE_PATH: Es la ruta de acceso a un archivo YAML en el que se exporta la configuración.
  • REGION: Especifica --global si se trata de una política global o REGION si se trata de una política regional.

API

Para exportar las reglas existentes de la política de firewall de red global, usa el método networkFirewallPolicies.get en la API de Compute Engine:

  GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/firewallPolicies/FIREWALL_POLICY_NAME
   

Reemplaza lo siguiente:

  • PROJECT: Es el ID de tu proyecto.
  • FIREWALL_POLICY_NAME: Es el nombre de la política de firewall que deseas exportar.

Para exportar las reglas existentes de la política de firewall de red regional, usa el método regionNetworkFirewallPolicies.get en la API de Compute Engine:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/firewallPolicies/FIREWALL_POLICY_NAME

Reemplaza lo siguiente:

  • PROJECT: Es el ID de tu proyecto.
  • REGION: Es la región de las reglas de la política de firewall.
  • FIREWALL_POLICY_NAME: Es el nombre de la política de firewall que deseas exportar.

Esta solicitud muestra una definición de recurso de política de firewall.

Modifica las reglas de la política de firewall

Modifica las reglas de la política de firewall que exportaste en la sección anterior.

  1. Abre el archivo exportado. Por ejemplo, RULES_YAML_FILE.

  2. Agrega el campo rules como se muestra en el siguiente ejemplo.

        rules:
         -action: allow
          description: test-rule1
          direction: INGRESS
          disabled: false
          enableLogging: false
          kind: compute#firewallPolicyRule
      

  3. Agrega los campos de configuración adicionales, como action, direction y priority. A continuación, se muestra un ejemplo de un archivo YAML básico.

        rules:
         -action: allow
          description: test-rule1
          direction: INGRESS
          disabled: false
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            layer4Configs:
            -ipProtocol: all
            srcIpRanges:
            -192.0.2.0/24
          priority: 1
          ruleTupleCount: 2
         -action: goto_next
          description: default egress rule
          direction: EGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            destIpRanges:
            -::/0
            layer4Configs:
            -ipProtocol: all
          priority: 2147483644
          ruleTupleCount: 2
         -action: goto_next
          description: default ingress rule
          direction: INGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            layer4Configs:
            -ipProtocol: all
            srcIpRanges:
            -::/0
          priority: 2147483645
          ruleTupleCount: 2
         -action: goto_next
          description: default egress rule
          direction: EGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            destIpRanges:
            -198.51.100.0/24
            layer4Configs:
            -ipProtocol: all
          priority: 2147483646
          ruleTupleCount: 2
         -action: goto_next
          description: default ingress rule
          direction: INGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            layer4Configs:
            -ipProtocol: all
            srcIpRanges:
            -192.0.2.0/24
          priority: 2147483647
          ruleTupleCount: 2
      

Importa reglas de política de firewall

Importa las reglas en la política de firewall después de cambiar el archivo con las actualizaciones por lotes requeridas. Si importas el archivo modificado, se reemplazarán las reglas de la política de firewall existentes por las reglas proporcionadas.

Importa reglas de políticas de firewall jerárquicas

Importa reglas de firewall a la política de firewall jerárquica.

gcloud

Para importar reglas a la política de firewall jerárquica, usa el comando gcloud compute firewall-policies import-rules:

gcloud compute firewall-policies import-rules FIREWALL_POLICY \
    --source=RULES_YAML_FILE_PATH \
    --organization=ORGANIZATION

Reemplaza lo siguiente:

  • FIREWALL_POLICY: Es el nombre corto o el ID de la política de firewall jerárquica que deseas actualizar.
  • RULES_YAML_FILE_PATH: Es la ruta de acceso al archivo YAML desde el que se importarán las reglas.
  • ORGANIZATION: Es la organización en la que se actualizará la política de firewall de la organización. Se debe establecer si FIREWALL_POLICY es un nombre corto.

API

Para importar las reglas de la política de firewall, usa el método firewallPolicies.patch en la API de Compute Engine:

  PATCH https://compute.googleapis.com/compute/v1/locations/global/firewallPolicy/FIREWALL_POLICY_NAME
  

Reemplaza lo siguiente:

Importa la política de firewall de red

Importa el archivo YAML de reglas de firewall modificado a la política de firewall de red.

gcloud

Para importar reglas a la política de firewall de red, usa el comando gcloud compute network-firewall-policies import-rules:

gcloud compute network-firewall-policies import-rules FIREWALL_POLICY \
    --source=RULES_YAML_FILE_PATH \
    --global | --region=REGION

Reemplaza lo siguiente:

  • FIREWALL_POLICY: Es el nombre de la política de firewall de red que deseas actualizar.
  • RULES_YAML_FILE_PATH: Es la ruta de acceso elegida para importar las reglas.
  • REGION: Especifica --global si se trata de una política global o REGION si se trata de una política regional.

API

Para importar las reglas de la política de firewall de red modificadas, usa el método networkFirewallPolicies.patch en la API de Compute Engine:

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/global/firewallPolicy/FIREWALL_POLICY_NAME
  

Reemplaza lo siguiente:

  • PROJECT: El ID del proyecto de las reglas de la política de firewall de red
  • FIREWALL_POLICY_NAME: Es el nombre de la política de firewall de red que deseas exportar.

Para importar las reglas de la política de firewall de red regional modificadas, usa el método regionNetworkFirewallPolicies.patch en la API de Compute Engine:

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/firewallPolicies/FIREWALL_POLICY_NAME
   

Reemplaza lo siguiente:

  • PROJECT: El ID del proyecto de las reglas de la política de firewall de red regional
  • REGION: Es la región de las reglas de la política de firewall.
  • FIREWALL_POLICY_NAME: Es el nombre de la política de firewall que deseas exportar.

    Esta solicitud muestra una definición de recurso de política de firewall de red.

¿Qué sigue?