Ejemplos de políticas de cortafuegos de red globales y regionales

En esta página se muestran ejemplos de implementaciones de políticas de cortafuegos de red globales y regionales. Se presupone que conoces los conceptos descritos en las políticas de cortafuegos de red globales y las políticas de cortafuegos de red regionales.

Puedes asociar una política de cortafuegos de red global y varias políticas de cortafuegos de red regionales a una red de nube privada virtual (VPC). Una política de cortafuegos de red global se aplica a todas las subredes de todas las regiones de la red de VPC. Una política de cortafuegos de red regional se aplica solo a las subredes de la red de VPC de la región de destino.

En la figura 1 se describe el ámbito de una política de cortafuegos de red global y de una política de cortafuegos de red regional en una red de VPC.

Figura 1. Ámbito de las políticas de cortafuegos de red globales y regionales.
Imagen 1. Ámbito de las políticas de cortafuegos de red globales y regionales.

Ejemplo: Denegar todas las conexiones externas excepto a puertos específicos

En este caso práctico, una política de cortafuegos de red global bloquea todas las conexiones de fuentes de Internet externas, excepto las conexiones de los puertos de destino 80, 443 y 22. Se bloquea una conexión a Internet de entrada en puertos distintos de 80, 443 o 22. La aplicación de las reglas se delega en la política de cortafuegos de red regional para las conexiones en los puertos 80, 443 o 22.

En este ejemplo, una política de cortafuegos de red regional se aplica a region-a, lo que permite el tráfico interno desde la fuente 10.2.0.0/16 y el tráfico entrante a los puertos 443 y 80 desde cualquier fuente. En la figura 2 se describe la configuración de este caso práctico.

Figura 2. Deniega todas las conexiones externas, excepto las que se dirijan a puertos de destino específicos.
Imagen 2. Deniega todas las conexiones externas, excepto las que se dirijan a puertos de destino específicos.

Política aplicable en las VMs

En esta sección se describe la política de cortafuegos de red efectiva aplicable en este ejemplo después de evaluar las reglas de toda la jerarquía.

Conexiones de entrada

  • Las conexiones de entrada de 10.0.0.0/8 coinciden con la regla de política de cortafuegos de red global de mayor prioridad delegate-internal-traffic y omiten el resto de las reglas de la política de cortafuegos de red global. En la regla de la política de cortafuegos de red regional, se permiten las conexiones entrantes de 10.2.0.0/16 y el resto de las conexiones se evalúan en función de la regla de entrada implícita deny.

  • Las conexiones de entrada con un intervalo de IPs de origen distinto de 10.0.0.0/8 y los puertos de destino 22, 80 y 443 se delegan en el nivel de regla de la política de cortafuegos de red regional. En la regla de política de cortafuegos de red regional, se permiten los puertos 80 y 443, pero no el puerto 22.

Conexión de salida

  • No hay ninguna coincidencia en las reglas de la política de cortafuegos de red global. Por lo tanto, se aplican las reglas implícitas del sistema, que permiten las conexiones salientes.

Cómo se configura

  1. Crea una política de cortafuegos de red global que contenga la siguiente regla:

    gcloud compute network-firewall-policies create \
        "example-firewall-policy-global" --global \
        --description "Global network firewall policy with rules that apply to all VMs in the VPC network"
    
  2. Asocia la política a la red de VPC:

    gcloud compute network-firewall-policies associations create \
        --firewall-policy example-firewall-policy-global \
        --network my-example-vpc \
        --global-firewall-policy
    
  3. Añade una regla para que coincida con cualquier conexión entrante de 10.0.0.0/8:

    gcloud compute network-firewall-policies rules create 1000 \
        --action goto_next \
        --description "delegate-internal-traffic" \
        --layer4-configs all \
        --firewall-policy example-firewall-policy-global \
        --src-ip-ranges 10.0.0.0/8 \
        --global-firewall-policy
    
  4. Añade una regla para delegar el tráfico externo de puertos específicos:

    gcloud compute network-firewall-policies rules create 2000 \
        --action goto_next \
        --description "delegate-external-traffic-spec-ports" \
        --layer4-configs tcp:80,tcp:443,tcp:22 \
        --firewall-policy example-firewall-policy-global \
        --src-ip-ranges 0.0.0.0/0 \
        --global-firewall-policy
    
  5. Añade una regla para bloquear todo el tráfico de entrada restante:

    gcloud compute network-firewall-policies rules create 3000 \
        --action deny \
        --description "block-external-traffic-spec-ports" \
        --firewall-policy example-firewall-policy-global \
        --src-ip-ranges 0.0.0.0/0 \
        --layer4-configs all \
        --global-firewall-policy
    
  6. Crea una política de cortafuegos de red regional:

    gcloud compute network-firewall-policies create \
        example-firewall-policy-regional --region=region-a \
        --description "Regional network firewall policy with rules that apply to all VMs in region-a"
    
  7. Asocia la política de cortafuegos de red regional a una red de VPC para activar las reglas de la política en las VMs de esa red en una región específica:

    gcloud compute network-firewall-policies associations create \
        --firewall-policy example-firewall-policy-regional \
        --network my-example-vpc \
        --firewall-policy-region=region-a  
    
  8. Añade una regla para permitir el tráfico interno de la política de cortafuegos de red regional:

    gcloud compute network-firewall-policies rules create 1000 \
        --action allow \
        --firewall-policy example-firewall-policy-regional \
        --description allow-internal-traffic \
        --direction INGRESS \
        --src-ip-ranges 10.2.0.0/16 \
        --layer4-configs all \
        --firewall-policy-region=region-a 
    
  9. Añade una regla para permitir el tráfico externo desde puertos específicos:

    gcloud compute network-firewall-policies rules create 2000 \
        --action allow \
        --firewall-policy example-firewall-policy-regional \
        --description allow-external-traffic-spec-ports \
        --direction INGRESS \
        --layer4-configs=tcp:80,tcp:443 \
        --src-ip-ranges 0.0.0.0/0 \
        --firewall-policy-region=region-a
    

Siguientes pasos