Migre regras de firewall da VPC que não usam etiquetas de rede nem contas de serviço

Se as regras de firewall da nuvem virtual privada (VPC) não usarem etiquetas de rede nem contas de serviço, execute as seguintes tarefas para migrar as regras de firewall da VPC para uma política de firewall de rede global:

  1. Avalie o seu ambiente.
  2. Migre as regras de firewall da VPC.
  3. Reveja a nova política de firewall de rede global.
  4. Conclua as tarefas pós-migração.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Compute Engine API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. Install the Google Cloud CLI.

  6. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  7. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  8. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  9. Verify that billing is enabled for your Google Cloud project.

  10. Enable the Compute Engine API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  11. Install the Google Cloud CLI.

  12. Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  13. Para inicializar a CLI gcloud, execute o seguinte comando:

    gcloud init
  14. Certifique-se de que tem a função de administrador de segurança do Compute (roles/compute.securityAdmin).
  15. Avalie o seu ambiente

    1. Identifique o número de regras de firewall da VPC existentes na sua rede.
    2. Tome nota das prioridades associadas a cada regra de firewall da VPC.
    3. Certifique-se de que tem as funções e as autorizações de gestão de identidade e acesso (IAM) necessárias para criar, associar, modificar e ver políticas de firewall de rede global.

    Migre as regras de firewall da VPC

    Depois de avaliar o seu ambiente, migre as regras de firewall da VPC para uma política de firewall de rede global através do comando compute firewall-rules migrate.

    gcloud beta compute firewall-rules migrate \
        --source-network=NETWORK_NAME \
        --target-firewall-policy=POLICY_NAME
    

    Substitua o seguinte:

    • NETWORK_NAME: o nome da sua rede VPC que contém as regras de firewall de VPC que quer migrar.
    • POLICY_NAME: o nome da política de firewall de rede global a criar durante a migração.

    Exclua regras de firewall da migração

    Para excluir regras de firewall específicas da migração, use o comando gcloud beta compute firewall-rules migrate com a flag --exclusion-patterns-file:

    gcloud beta compute firewall-rules migrate \
        --source-network=NETWORK_NAME \
        --target-firewall-policy=POLICY_NAME \
        --exclusion-patterns-file=EXCLUSION_PATTERNS_FILE
    

    Substitua o seguinte:

    • NETWORK_NAME: o nome da sua rede VPC que contém as regras de firewall de VPC que quer migrar.
    • POLICY_NAME: o nome da política de firewall de rede global a criar durante a migração.
    • EXCLUSION_PATTERNS_FILE: o nome do ficheiro que contém expressões regulares que definem padrões de nomenclatura da firewall de VPC a excluir da migração. Certifique-se de que especifica o caminho completo do ficheiro. As regras de firewall que correspondem aos padrões especificados são ignoradas.

      Quando definir os padrões de exclusão, considere o seguinte:

      • Cada expressão regular tem de estar na sua própria linha e representar um único padrão de nomenclatura de firewall.
      • As expressões regulares não contêm espaços em branco à esquerda nem à direita.

    Veja as regras de firewall excluídas

    Com base nos padrões de nomenclatura das regras de firewall excluídas, a ferramenta de migração não migra algumas regras de firewall, como as regras de firewall do Google Kubernetes Engine (GKE). Para exportar a lista de padrões de nomenclatura de regras de firewall excluídos, use o comando gcloud beta compute firewall-rules migrate com os flags --export-exclusion-patterns e --exclusion-patterns-file.

    gcloud beta compute firewall-rules migrate \
        --source-network=NETWORK_NAME \
        --target-firewall-policy=POLICY_NAME \
        --exclusion-patterns-file=EXCLUSION_PATTERNS_FILE \
        --export-exclusion-patterns
    

    Substitua o seguinte:

    • NETWORK_NAME: o nome da sua rede VPC que contém as regras de firewall de VPC que quer migrar.
    • POLICY_NAME: o nome da política de firewall de rede global a criar durante a migração.
    • EXCLUSION_PATTERNS_FILE: o caminho do ficheiro onde os seguintes padrões de nomenclatura de regras de firewall excluídas são exportados.

      gke-(.+)-ipv6-all
      gke-(.+)-(.+)-((master)|(vms)|(all)|(inkubelet)|(exkubelet)|(mcsd))
      k8s-fw-(l7-)?(.+)
      k8s-(.+)-((node)|(http)|(node-http))-hc
      (.+)-hc
      k8s2-(.+)-(.+)-(.+)-(.+)(-fw)?
      k8s2-(.+)-l4-shared-hc-fw
      gke((gw)|(mcg))1-l7-(.+)-(.+)
      

    Para migrar regras de firewall excluídas que correspondam a um padrão específico, remova o padrão da lista exportada e execute o comando gcloud beta compute firewall-rules migrate com a flag --exclusion-patterns-file.

    Forçar a migração, mantendo a ordem de avaliação

    Durante a migração, se a ordem de avaliação de uma regra de firewall excluída estiver entre as ordens de avaliação das regras de firewall especificadas pelo utilizador, a migração falha.Isto acontece porque as regras de firewall excluídas não são migradas, e a ferramenta de migração não consegue preservar a ordem de avaliação original das regras definidas pelo utilizador na nova política de firewall de rede.

    Por exemplo, se as regras de firewall tiverem as seguintes prioridades, a migração falha.

    • Uma regra especificada pelo utilizador com a prioridade 100
    • Uma regra excluída com a prioridade 200
    • Uma regra especificada pelo utilizador com prioridade 300

    Para forçar a ferramenta de migração a migrar as regras especificadas pelo utilizador, mantendo a respetiva ordem de avaliação original e ignorando as regras de firewall excluídas, use o comando gcloud beta compute firewall-rules migrate com a flag --force.

    gcloud beta compute firewall-rules migrate \
        --source-network=NETWORK_NAME \
        --target-firewall-policy=POLICY_NAME \
        --force
    

    Substitua o seguinte:

    • NETWORK_NAME: o nome da sua rede VPC que contém as regras de firewall de VPC que quer migrar.
    • POLICY_NAME: o nome da política de firewall de rede global a criar durante a migração.

    Reveja a nova política de firewall de rede global

    Antes de anexar a nova política de firewall de rede global a uma rede VPC, a Google recomenda que reveja a política para ajudar a garantir que o processo de migração foi concluído corretamente.

    Valide a configuração das regras da política de firewall e verifique se os seguintes componentes das regras foram migrados corretamente para cada regra:

    • Prioridade relativa
    • Direção do trânsito
    • Ação em caso de correspondência
    • Definições de registo
    • Parâmetros de destino
    • Parâmetros de origem (para regras de entrada)
    • Parâmetros de destino (para regras de saída)
    • Restrições de protocolos e portas

    Para mais informações sobre os componentes de uma regra de política de firewall, consulte o artigo Regras de política de firewall.

    Tarefas pós-migração

    Para ativar e usar a sua política de firewall de rede global, tem de concluir as tarefas pós-migração abordadas nas secções seguintes.

    Associe a política de firewall de rede global à sua rede

    A ferramenta de migração cria a política de firewall de rede global com base nas regras de firewall da VPC existentes. Tem de associar manualmente a política à rede VPC necessária para ativar as regras da política para todas as VMs nessa rede. Para associar a política de firewall de rede global, use o comando compute network-firewall-policies associations create.

    gcloud compute network-firewall-policies associations create \
        --firewall-policy=POLICY_NAME \
        --network=NETWORK_NAME \
        --global-firewall-policy
        --replace-association-on-target
    

    Substitua o seguinte:

    • POLICY_NAME: o nome da política de rede global que quer associar à sua rede VPC.
    • NETWORK_NAME: o nome da sua rede VPC.

    Para mais informações sobre como associar uma política de firewall de rede global a uma rede VPC, consulte o artigo Associar uma política à rede.

    Altere a ordem de avaliação das políticas e regras

    Por predefinição, o Cloud Next Generation Firewall avalia as regras de firewall da VPC antes de avaliar uma política de firewall de rede global. Para garantir que as políticas de firewall de rede globais têm precedência sobre as regras de firewall da VPC, use o comando compute networks update para alterar a ordem de avaliação das regras.

    gcloud compute networks update NETWORK-NAME \
        --network-firewall-policy-enforcement-order=BEFORE_CLASSIC_FIREWALL
    

    Substitua NETWORK_NAME pelo nome da sua rede VPC.

    Para verificar se a política de firewall de rede global é avaliada antes das regras de firewall da VPC, use o comando compute networks get-effective-firewalls.

    gcloud compute networks get-effective-firewalls NETWORK_NAME
    

    No resultado do comando anterior, se TYPE: network-firewall-policy for apresentado antes de TYPE: network-firewall, a política de firewall de rede global é avaliada primeiro.

    Para mais informações acerca da alteração da ordem de avaliação de regras e políticas, consulte o artigo Altere a ordem de avaliação de regras e políticas.

    Ative o registo de regras de firewall

    O registo ajuda a determinar se uma regra de firewall está a funcionar conforme previsto. A ferramenta de migração retém o estado de registo das regras de firewall da VPC existentes quando cria a nova política de firewall de rede global. Certifique-se de que o registo está ativado para as regras na política de firewall de rede global. Para ativar o registo para regras de políticas de firewall, use o comando compute network-firewall-policies rules update.

    gcloud compute network-firewall-policies rules update PRIORITY \
        --firewall-policy=POLICY_NAME \
        --enable-logging
        --global-firewall-policy
    

    Substitua o seguinte:

    • PRIORITY: a prioridade da regra a ser atualizada.
    • POLICY_NAME: o nome da política de firewall de rede global cuja regra quer atualizar.

    Teste a política de firewall de rede global

    Antes de eliminar as regras de firewall da VPC, teste a política de firewall da rede global para verificar se as regras da política estão a funcionar de acordo com as suas expetativas para qualquer tráfego que corresponda às regras.

    Faça o seguinte:

    1. Certifique-se de que ativou o registo nas regras de firewall da VPC e na política de firewall de rede global.
    2. Altere a ordem de avaliação das regras para que a política de firewall de rede global seja avaliada antes das regras de firewall da VPC.
    3. Monitorize os registos para verificar se a política de firewall de rede global tem contagens de acessos e se as regras de firewall da VPC estão ocultas.

    Elimine as regras de firewall da VPC da sua rede

    A Google recomenda que desative primeiro as regras da firewall da VPC antes de as eliminar completamente. Pode reverter para essas regras se a política de firewall de rede global criada pela ferramenta de migração não fornecer os resultados esperados.

    Para desativar uma regra de firewall da VPC, use o comando compute firewall-rules update.

    gcloud compute firewall-rules update RULE_NAME --disabled
    

    Substitua RULE_NAME pelo nome da regra de firewall da VPC a desativar.

    Para eliminar uma regra de firewall da VPC, use o comando compute firewall-rules delete.

    gcloud compute firewall-rules delete RULE_NAME
    

    O que se segue?