Usa políticas jerárquicas de firewall

En esta página, se da por sentado que estás familiarizado con los conceptos que se describen en Descripción general de las políticas de firewall jerárquicas. Para ver ejemplos de implementaciones de políticas de firewall jerárquicas, consulta Ejemplos de políticas de firewall jerárquicas.

Limitaciones

  • Las reglas de políticas de firewall jerárquicas solo pueden usar rangos de IP a fin de definir fuentes para las reglas de entrada. Las etiquetas de origen y las cuentas de servicio de origen solo son compatibles con las reglas de firewall de VPC.
  • Las reglas de políticas de firewall jerárquicas no son compatibles con el uso de etiquetas de red para definir objetivos. En su lugar, debes usar una red de VPC de destino o una cuenta de servicio de destino.
  • Las políticas de firewall se pueden aplicar a nivel de carpeta y de organización, pero no a nivel de red de VPC. Las reglas de firewall de VPC normales son compatibles con las redes de VPC.
  • Solo se puede asociar una política de firewall a un nodo (organización o carpeta), aunque las instancias de máquina virtual (VM) en una carpeta pueden heredar reglas de toda la jerarquía de nodos que está por encima de la VM.
  • El registro de reglas de firewall es compatible con las reglas allow y deny, pero no es compatible con las reglas goto_next.
  • Las direcciones IPv6 no son compatibles.

Tareas de políticas de firewall

Crea una política de firewall

Puedes crear una política en cualquier nodo, organización o carpeta de la jerarquía de la organización. Después de crear una política, puedes asociarla con cualquier nodo de tu organización. Una vez asociadas, las reglas de la política se activan para las VM que están por debajo del nodo asociado en la jerarquía.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de la organización o una carpeta dentro de la organización.

  3. Haz clic en Crear política de firewall.

  4. Asigna un nombre a la política.

  5. Si deseas crear reglas para tu política, haz clic en Continuar y, luego, en Agregar regla.

    Para obtener más información, consulta la sección sobre cómo crear reglas de firewall.

  6. Si deseas asociar la política a un nodo, haz clic en Continuar y, luego, en Asociar.

    Para obtener detalles, consulta la sección sobre cómo asociar una política con la organización o una carpeta.

  7. Haz clic en Crear.

gcloud

gcloud beta compute org-security-policies create \
    [--organization ORG_ID] | --folder FOLDER_ID] \
    --display-name DISPLAY_NAME

Reemplaza los siguientes elementos:

  • ORG_ID: El ID de tu organización
    Especifica este ID si creas la política a nivel de la organización. Este ID solo indica dónde reside la política; no asocia de forma automática la política con el nodo de la organización.
  • FOLDER_ID: El ID de una carpeta
    Especifica este ID si creas la política en una carpeta determinada. Este ID solo indica dónde reside la política; no asocia de forma automática la política con esa carpeta.
  • DISPLAY_NAME: Un nombre para la política
    Una política creada mediante la interfaz de línea de comandos de gcloud tiene dos nombres: uno generado por el sistema y otro visible proporcionado por ti. Cuando usas la interfaz de gcloud para actualizar una política existente, puedes proporcionar el nombre generado por el sistema o el nombre visible y el ID de la organización. Cuando usas la API para actualizar la política, debes proporcionar el nombre generado por el sistema.

Crea reglas de firewall

Las reglas de las políticas de firewall jerárquicas deben crearse en una política de firewall jerárquica. Las reglas no se activarán hasta que asocies la política con un nodo.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de la organización o la carpeta que contenga la política.

  3. Haz clic en el nombre de la política.

  4. Haz clic en Agregar regla.

  5. Propaga los campos de la regla:

    1. Prioridad: El orden de evaluación numérico de la regla. Primero se evalúa una regla que tiene una prioridad de 1. Las prioridades deben ser únicas para cada regla. Se recomienda asignar números de prioridad a las reglas que permitan la inserción posterior (como 100, 200 o 300).
    2. Establece la recopilación de Registros como Activada o Desactivada.
    3. En Dirección del tráfico, especifica si esta es una regla de Entrada o de Salida.
    4. En Acción en caso de coincidencia, especifica si se permiten las conexiones que coinciden con la regla (Permitir), si se rechazan (Rechazar) o si la evaluación de la conexión se pasa a la siguiente regla de firewall inferior en la jerarquía (Pasar a la siguiente).
    5. Opcional: Puedes restringir la regla solo a ciertas redes si las especificas en el campo Red de destino.
    6. Opcional: Puedes restringir la regla a las VM que se ejecutan como una cuenta de servicio específica si especificas las cuentas de servicio en el campo Cuenta de servicio de destino.
    7. Si creas una regla de Entrada, especifica a qué rangos de IP de origen se aplica. Si creas una regla de Salida, especifica a qué rangos de IP de destino se aplica. En ambos casos, especifica 0.0.0.0/0 para todas las direcciones IP.
    8. En Protocolos y puertos, especifica que la regla se aplica a todos los protocolos y puertos o especifica a qué protocolos y puertos se aplica.
    9. Haz clic en Crear.
  6. Haz clic en Agregar regla para agregar otra regla. Haz clic en Continuar > Associate para asociar la política con un nodo o en Crear a fin de crear la política.

gcloud

gcloud beta compute org-security-policies rules create PRIORITY \
    --organization ORG_ID \
    --security-policy POLICY_NAME \
    --direction DIRECTION \
    --action ACTION \
    --layer4-configs PROTOCOL_PORT \
    --src-ip-ranges IP_RANGES \
    [--enable-logging | --no-enable-logging]

Reemplaza los siguientes elementos:

  • PRIORITY: El orden de evaluación numérico de la regla
    Primero se evalúa una regla con una prioridad de 1. Las prioridades deben ser únicas para cada regla. Se recomienda asignar números de prioridad a las reglas que permitan la inserción posterior (como 100, 200 o 300).
  • ORG_ID: El ID de la organización
  • POLICY_NAME: El nombre visible o el nombre generado por el sistema de la política
  • DIRECTION: Indica si la regla es de ingress o egress; el valor predeterminado es ingress
  • ACTION es una de las siguientes opciones:
    • allow: Permite las conexiones que coinciden con la regla.
    • deny: Rechaza las conexiones que coinciden con la regla.
    • goto_next: Pasa la evaluación de conexión al siguiente nivel en la jerarquía, ya sea una carpeta o la red.
  • PROTOCOL_PORT: Una lista separada por comas de protocolos de destino (tcp, udp, icmp, esp, ah y sctp), protocolos y puertos (tcp:80), o protocolos y rangos de puertos (tcp:5000-6000)
    No puedes especificar un puerto ni un rango de puertos sin un protocolo. Para icmp, no puedes especificar un puerto ni un rango de puertos; por ejemplo:
    --layer4-configs tcp:80, tcp:443, udp:4000-5000, icmp
  • IP_RANGES: Una lista separada por comas de rangos de IP con formato CIDR; por ejemplo:
    --src-ip-ranges 10.100.0.1/32, 10.200.0.0/24

Asocia una política con la organización o la carpeta

Asocia una política con un nodo a fin de activar las reglas de la política para cualquier VM que esté por debajo del nodo en la jerarquía.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de la organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Haz clic en la pestaña Asociada con.

  5. Haz clic en Associate.

  6. Selecciona la raíz de la organización o carpetas dentro de la organización.

  7. Haz clic en Associate.

gcloud

gcloud beta compute org-security-policies associations create \
    --security-policy POLICY_NAME \
    --organization ORG_ID \
    [ --folder FOLDER_ID ] \
    [ --name ASSOCIATION_NAME ] \
    [ --replace-association-on-target ]

Reemplaza los siguientes elementos:

  • POLICY_NAME: El nombre visible o el nombre generado por el sistema de la política
  • ORG_ID: El ID de la organización
  • FOLDER_ID: Si asocias la política con una carpeta, especifícala aquí; no es necesario hacerlo si asocias la política con el nivel de la organización
  • ASSOCIATION_NAME: Un nombre opcional para la asociación; si no se especifica, el nombre se configura como “organización ORG_ID” o “carpeta FOLDER_ID”.
  • --replace-association-on-target
    De forma predeterminada, el método falla si intentas insertar una asociación en un nodo de organización o de carpeta que ya tiene una asociación. Si especificas esta marca, la asociación existente se borra al mismo tiempo que se crea la asociación nueva. Esto evita que el nodo se quede sin una política durante la transición.

Mueve una política de un nodo a otro

Mover una política cambia qué nodo es propietario de la política. Para mover una política, debes tener permisos move en los nodos antiguos y nuevos.

Mover una política no afecta ninguna asociación de política existente ni la evaluación de las reglas existentes, pero podría afectar quién tiene permisos para modificar o asociar la política después de que se movió.

Console

Usa el comando de gcloud para este procedimiento.

gcloud

gcloud beta compute org-security-policies move POLICY_NAME \
    --organization ORG_ID \
    [--folder FOLDER_ID]

Reemplaza los siguientes elementos:

  • POLICY_NAME: El nombre visible o el nombre generado por el sistema de la política que mueves
  • ORG_ID: El ID de la organización; si mueves la política al nodo de la organización, especifica este ID, pero no especifiques una carpeta
  • FOLDER_ID: Si asocias la política con una carpeta, especifícala aquí; no es necesario hacerlo si asocias la política con el nodo de la organización

Actualiza la descripción de una política

El único campo de una política que se puede actualizar es el campo Descripción.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en Editar.

  4. Modifica la Descripción.

  5. Haz clic en Guardar.

gcloud

gcloud beta compute org-security-policies list-rules POLICY_NAME \
    --organization ORG_ID

Enumera las políticas

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

    En la sección Firewall policies associated with this node or inherited by the node, se muestra qué políticas están asociadas con este nodo en la jerarquía de recursos.

    En la sección Firewall policies located in this node, se enumeran las políticas que son propiedad de este nodo en la jerarquía de recursos. Puede ser que las políticas no estén asociadas con este nodo, pero que estén disponibles para que se las asocie con este o con otros nodos.

gcloud

gcloud beta compute org-security-policies list \
    [--organization ORG_ID | --folder FOLDER_ID]

Describe una política

Puedes ver todos los detalles de una política, incluidas todas sus reglas de firewall. Además, puedes ver muchos atributos presentes en todas las reglas en la política. Estos atributos se tienen en cuenta para un límite por política.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

gcloud

gcloud beta compute org-security-policies describe POLICY_NAME \
    --organization ORG_ID

Borra una política

Debes borrar todas las asociaciones en una política de firewall de la organización para poder borrarla.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en la política que deseas borrar.

  4. Haz clic en la pestaña Asociada con.

  5. Selecciona todas las asociaciones.

  6. Haz clic en Quitar.

  7. Una vez que se quiten todas las asociaciones, haz clic en Borrar.

gcloud

  1. Enumera todos los nodos asociados con una política de firewall:

    gcloud beta compute org-security-policies describe
        --security-policy POLICY_NAME \
        --organization ORG_ID
    
  2. Borra asociaciones individuales. Para quitar la asociación, debes tener la función compute.orgSecurityResourceAdmin en el nodo asociado o principal de ese nodo.

    gcloud beta compute org-security-policies associations delete NODE_NAME \
        --organization ORG_ID \
        --security-policy POLICY_NAME
    
  3. Borra la política:

    gcloud beta compute org-security-policies delete POLICY_NAME \
        --organization ORG_ID
    

Enumera las asociaciones de un nodo

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Las políticas asociadas y heredadas se enumeran en Firewall policies associated with this node or inherited by the node.

gcloud

gcloud beta compute org-security-policies associations list \
  [--organization ORG_ID | --folder FOLDER_ID]

Enumera las asociaciones de una política

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Haz clic en la pestaña Asociaciones.

  5. Las asociaciones se enumeran en la tabla.

gcloud

gcloud beta compute org-security-policies describe POLICY_ID

Borra una asociación

Para detener la aplicación de la política de seguridad en la organización o en una carpeta, borra la asociación.

Sin embargo, si quieres intercambiar una política de seguridad por otra, no es necesario borrar primero la asociación existente. Si lo haces, habrá un período en el que no se aplicará ninguna política. En su lugar, reemplaza la política existente cuando asocias una política nueva.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Haz clic en la pestaña Asociaciones.

  5. Selecciona la asociación que quieres borrar.

  6. Haz clic en Quitar.

gcloud

gcloud beta compute org-security-policies associations delete ASSOCIATION_NAME \
    --security-policy POLICY_NAME \
    --organization ORG_ID

Tareas de reglas

Crea una regla en una política de firewall existente

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Haz clic en Agregar regla.

  5. Propaga los campos de la regla:

    1. Prioridad: El orden de evaluación numérico de la regla. Primero se evalúa una regla que tiene una prioridad de 1. Las prioridades deben ser únicas para cada regla. Se recomienda asignar números de prioridad a las reglas que permitan la inserción posterior (como 100, 200 o 300).
    2. Establece la recopilación de Registros como Activada o Desactivada.
    3. En Dirección del tráfico, especifica si esta es una regla de Entrada o de Salida.
    4. En Acción en caso de coincidencia, especifica si se permiten las conexiones que coinciden con la regla (Permitir), si se rechazan (Rechazar) o si la evaluación de la conexión se pasa a la siguiente regla de firewall inferior en la jerarquía (Pasar a la siguiente).
    5. Opcional: Puedes restringir la regla solo a ciertas redes si las especificas en el campo Red de destino.
    6. Opcional: Puedes restringir la regla a las VM que se ejecutan como una cuenta de servicio específica si especificas las cuentas de servicio en el campo Cuenta de servicio de destino.
    7. Si creas una regla de Entrada, especifica a qué rangos de IP de origen se aplica. Si creas una regla de Salida, especifica a qué rangos de IP de destino se aplica. En ambos casos, especifica 0.0.0.0/0 para todos.
    8. En Protocolos y puertos, especifica que la regla se aplica a todos los protocolos y puertos o especifica a qué protocolos y puertos se aplica.
  6. Haz clic en Crear.

gcloud

gcloud beta compute org-security-policies rules create PRIORITY \
    --organization ORG_ID \
    --security-policy POLICY_NAME \
    [--description DESCRIPTION \
    [--action ACTION] \
    [--dest-ip-ranges DEST_RANGES] \
    [--layer4-configs PROTOCOL_PORT] \
    [--direction DIRECTION] \
    [--disabled] \
    [--src-ip-ranges SRC_RANGES] \
    [--target-resources NETWORKS] \
    [--target-service-accounts SERVICE_ACCOUNTS] \
    [--enable-logging | --no-enable-logging]

Reemplaza los siguientes elementos:

  • PRIORITY: El orden de evaluación numérico de la regla
    Primero se evalúa una regla con una prioridad de 1. Las prioridades deben ser únicas para cada regla. Se recomienda asignar números de prioridad a las reglas que permitan la inserción posterior (como 100, 200 o 300).
  • ORG_ID: El ID de la organización
  • POLICY_NAME: El nombre de la política que contendrá la regla
  • DESCRIPTION: La descripción de texto de la regla
  • ACTION es una de las siguientes opciones:
    • allow: Permite las conexiones que coinciden con la regla.
    • deny: Rechaza las conexiones que coinciden con la regla.
    • goto_next: Pasa la evaluación de conexión al siguiente nivel en la jerarquía, ya sea una carpeta o la red.
  • DEST_RANGES: Solo para reglas egress, una lista separada por comas de rangos de IP con formato CIDR que indican qué direcciones IP de destino se ven afectadas por la regla; por ejemplo:
    --dest-ip-ranges 10.100.0.1/32, 10.200.0.0/24
  • PROTOCOL_PORT: Una lista separada por comas de protocolos de destino (tcp, udp, icmp, esp, ah y sctp), protocolos y puertos (tcp:80), o protocolos y rangos de puertos (tcp:5000-6000)
    TCP y UDP deben incluir un puerto o un rango de puertos. No se puede especificar un puerto ni un rango de puertos sin un protocolo. Para icmp, no puedes especificar un puerto ni un rango de puertos; por ejemplo:
    --layer4-configs tcp:80, tcp:443, udp:4000-5000, icmp
  • DIRECTION: Indica si la regla es de ingress o de egress; el valor predeterminado es ingress
    Los rangos de destino solo son compatibles con conexiones egress. Los rangos de origen solo son compatibles con conexiones de ingress.
  • --disabled: Indica que la regla de firewall, aunque existe, no se debe considerar cuando se procesan las conexiones; quitar esta marca habilita la regla, o puedes especificar --no-disabled
  • SRC_RANGES: Solo para reglas ingress, una lista separada por comas de rangos de IP con formato CIDR que indican qué direcciones IP de origen se ven afectadas por la regla; por ejemplo:
    --src-ip-ranges 10.100.0.1/32, 10.200.0.0/24
  • NETWORKS: Una lista de redes separadas por comas en las que se aplica esta regla; si se omite, la regla se aplica a todas las redes bajo el nodo
  • SERVICE_ACCOUNTS: Una lista de cuentas de servicio separadas por comas; la regla solo se aplica a las VM de esta cuenta de servicio
  • --enable-logging y --no-enable-logging: Habilita o inhabilita el registro de reglas de firewall para la regla determinada

Enumera todas las reglas en una política

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política. Las reglas se enumeran en la pestaña Reglas de firewall.

gcloud

gcloud beta compute org-security-policies list-rules POLICY_NAME \
    --organization ORG_ID

Describe una regla

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Haz clic en la prioridad de la regla.

gcloud

gcloud beta compute org-security-policies rules describe PRIORITY \
    --organization ORG_ID \
    --security-policy POLICY_NAME

Reemplaza los siguientes elementos:

  • PRIORITY: Es la prioridad de la regla que quieres ver; debido a que cada regla debe tener una prioridad única, esta configuración identifica de forma exclusiva a una regla
  • ORG_ID: El ID de la organización
  • POLICY_NAME: El nombre visible o el nombre generado por el sistema de la política que contiene la regla

Actualiza una regla

Para obtener descripciones de campos, consulta la sección sobre cómo crear reglas de firewall.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Haz clic en la prioridad de la regla.

  5. Haz clic en Editar.

  6. Modifica los campos que deseas cambiar.

  7. Haz clic en Guardar.

gcloud

gcloud beta compute org-security-policies rules update RULE_NAME \
    --security-policy POLICY_NAME \
    --organization ORG_ID \
    [...fields you want to modify...]

Copia reglas de una política a otra

Quita todas las reglas de la política de destino y reemplázalas por las reglas de la política de origen.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en la política de la que deseas copiar reglas.

  4. Haz clic en Clonar en la parte superior de la pantalla.

  5. Proporciona el nombre de una política de destino.

  6. Haz clic en Continuar > Associate si deseas asociar la política nueva de inmediato.

  7. Haz clic en Clonar.

gcloud

gcloud beta compute org-security-policies copy-rules POLICY_NAME \
    --organization ORG_ID \
    --source-security-policy SOURCE_POLICY

Reemplaza los siguientes elementos:

  • POLICY_NAME: La política que recibirá las reglas copiadas
  • ORG_ID: El ID de la organización
  • SOURCE_POLICY: La política de la que se deben copiar las reglas; debe ser la URL del recurso

Borra una regla de una política

Si borras una regla de una política, se quita la regla de todas las VM que la heredan.

Console

  1. En Google Cloud Console, ve a la página Firewall.

    Ir a la página Firewall

  2. En el menú desplegable del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga la política.

  3. Haz clic en tu política.

  4. Selecciona la regla que quieres borrar.

  5. Haz clic en Borrar.

gcloud

gcloud beta compute org-security-policies rules delete PRIORITY \
    --organization ORG_ID \
    --security-policy POLICY_NAME

Reemplaza los siguientes elementos:

  • PRIORITY: La prioridad de la regla que deseas borrar de la política
  • ORG_ID: El ID de la organización
  • POLICY_NAME: La política que contiene la regla

Obtén reglas de firewall efectivas para una red

Muestra todas las reglas de políticas de firewall jerárquicas y las reglas de firewall de VPC aplicadas a una red de VPC especificada.

Console

Usa el comando de gcloud para este procedimiento.

gcloud

gcloud beta compute networks get-effective-firewalls NETWORK_NAME

Reemplaza los siguientes elementos:

  • NETWORK_NAME: La red para la que se obtendrán reglas efectivas

Obtén reglas de firewall efectivas para una interfaz de VM

Muestra todas las reglas de políticas de firewall jerárquicas y las reglas de firewall de VPC aplicadas a una interfaz de VM de Compute Engine especificada.

Console

  1. En Google Cloud Console, ve a la página Instancias de VM.

    Ir a la página Instancias de VM

  2. En el menú desplegable del selector de proyectos, selecciona el proyecto que contiene la VM.

  3. Haz clic en la VM.

  4. En Interfaces de red, haz clic en la interfaz.

  5. Las reglas de firewall efectivas se muestran en Detalles de las rutas y del firewall.

gcloud

gcloud beta compute instances network-interfaces get-effective-firewalls INSTANCE_NAME \
    [--network-interface INTERFACE \
    [--zone ZONE]

Reemplaza los siguientes elementos:

  • INSTANCE_NAME: La VM para la que se obtendrán reglas efectivas; si no se especifica ninguna interfaz, se muestran reglas para la interfaz principal (nic0)
  • INTERFACE: La interfaz de la VM para la que se obtendrán reglas efectivas; el valor predeterminado es nic0
  • ZONE: La zona de la VM; es opcional si la zona deseada ya está configurada como predeterminada

¿Qué sigue?