As regras de firewall da nuvem privada virtual (VPC) podem conter tags de rede e contas de serviço de origem. Execute as tarefas a seguir para migrar as regras de firewall da VPC que contêm tags de rede e contas de serviço de origem para uma política de firewall de rede global:
- Avalie o ambiente.
- Liste tags de rede e contas de serviço atuais.
- Crie tags para cada tag de rede e conta de serviço de origem.
- Associe as tags de rede e as contas de serviço às tags que você criar.
- Vincule tags a instâncias de máquina virtual (VM).
- Migre regras de firewall da VPC para uma política de firewall de rede global.
- Analise a nova política de firewall de rede.
- Conclua as tarefas de pós-migração.
Antes de começar
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Verifique se você tem o papel de administrador de segurança do Compute (
roles/compute.securityAdmin
). - Identifique o número de regras de firewall da VPC na sua rede VPC.
- Anote as prioridades associadas a cada regra de firewall da VPC.
- Verifique se você tem as permissões e os papéis do IAM necessários para criar, associar, modificar e visualizar políticas globais de firewall de rede.
Verifique se você tem as permissões e os papéis do IAM necessários para criar, atualizar e excluir definições seguras de tags.
Confira na tabela a seguir um resumo dos vários papéis necessários para criar e gerenciar tags:
Nome do papel Tarefas realizadas Função de administrador de tags ( roles/resourcemanager.tagAdmin
)Criar, atualizar e excluir definições de tags. Para mais informações, consulte Administrar tags. Papel de visualizador de tags ( roles/resourcemanager.tagViewer
)Conferir definições de tags e tags anexadas aos recursos. Função de usuário da tag ( roles/resourcemanager.tagUser
)Adicionar e remover tags anexadas a recursos NETWORK_NAME
: o nome da rede VPC que contém as regras de firewall da VPC que você quer migrar.TAG_MAPPING_FILE
: o nome do arquivo JSON de mapeamento.TAG_KEY
: o nome da chave de tag.ORGANIZATION_ID
: o ID da organização.PROJECT_ID
: ID do projeto.NETWORK_NAME
: o nome da sua rede VPC.TAG_VALUE
: o valor a ser atribuído à chave de tag.Como o principal com o papel de administrador de tags, realize as seguintes tarefas:
- Analise as permissões necessárias para anexar tags seguras aos recursos do Google Cloud .
- Atribua o papel de usuário da tag ao principal que usa as tags seguras e vincula-as às VMs.
Como o principal com o papel de usuário da tag, use o comando
compute firewall-rules migrate
com a sinalização--bind-tags-to-instances
:gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --bind-tags-to-instances \ --tag-mapping-file=TAG_MAPPING_FILE
Substitua:
NETWORK_NAME
: o nome da sua rede VPC.TAG_MAPPING_FILE
: o nome do arquivo JSON de mapeamento.
NETWORK_NAME
: o nome da rede VPC que contém as regras de firewall da VPC que você quer migrar.POLICY_NAME
: o nome da política de firewall de rede global a ser criada durante a migração.NETWORK_NAME
: o nome da rede VPC que contém as regras de firewall da VPC que você quer migrar.POLICY_NAME
: o nome da política de firewall de rede global a ser criada durante a migração.EXCLUSION_PATTERNS_FILE
: o nome do arquivo que contém expressões regulares que definem padrões de nomenclatura de firewall da VPC a serem excluídos da migração. Especifique o caminho completo do arquivo. As regras de firewall que correspondem aos padrões especificados são ignoradas.Ao definir os padrões de exclusão, considere o seguinte:
- Cada expressão regular precisa estar em uma linha e representar um único padrão de nomenclatura de firewall.
- As expressões regulares não contêm espaços em branco no início ou no fim.
NETWORK_NAME
: o nome da rede VPC que contém as regras de firewall da VPC que você quer migrar.POLICY_NAME
: o nome da política de firewall de rede global a ser criada durante a migração.EXCLUSION_PATTERNS_FILE
: o caminho do arquivo em que 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-(.+)-(.+)
- Uma regra especificada pelo usuário com prioridade 100
- Uma regra excluída com prioridade 200
- Uma regra especificada pelo usuário com prioridade 300
NETWORK_NAME
: o nome da rede VPC que contém as regras de firewall da VPC que você quer migrar.POLICY_NAME
: o nome da política de firewall de rede global a ser criada durante a migração.A configuração das regras da política de firewall está correta, e os seguintes componentes de regras foram migrados adequadamente para cada regra:
- Prioridade relativa
- Direção do tráfego
- Ação se houver correspondência
- Configurações de registro
- Parâmetros de destino
- Parâmetros de origem (para regras de entrada)
- Parâmetros de destino (para regras de saída)
- Restrições de protocolo e porta
Verifique se as tags seguras estão anexadas à VM correta. Use o comando
resource-manager tags bindings list
.gcloud resource-manager tags bindings list \ --location=ZONE_ID \ --parent //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE_ID/instances/INSTANCE_NAME \ --effective
Substitua:
ZONE_ID
: a zona da VM;PROJECT_ID
: ID do projeto.INSTANCE_NAME
: o nome da VM.
- Saiba mais sobre como migrar regras de firewall da VPC.
- Migre as regras de firewall da VPC sem dependências.
Avaliar o ambiente
Antes de migrar as regras de firewall da VPC para uma política de firewall de rede global, avalie o ambiente atual e os papéis e permissões do gerenciamento de identidade e acesso (IAM):
Listar tags de rede e contas de serviço atuais
Determine se as regras de firewall da VPC usam tags de rede ou contas de serviço e crie um arquivo JSON para salvar os detalhes dessas contas.
Para exportar as tags de rede e as contas de serviço na sua rede para um arquivo JSON de mapeamento, use o comando compute firewall-rules migrate
com a sinalização --export-tag-mapping
.
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --export-tag-mapping \ --tag-mapping-file=TAG_MAPPING_FILE
Substitua:
Se as regras de firewall da VPC tiverem apenas contas de serviço, o arquivo JSON gerado terá apenas contas de serviço. Da mesma forma, se as regras de firewall da VPC
tiverem apenas tags de rede, o arquivo JSON gerado terá apenas
tags de rede. As contas de serviço têm o prefixo sa
, e as tags de rede não têm prefixo.
Por exemplo, o arquivo JSON gerado a seguir contém uma tag de rede sql-server
e uma
conta de serviço example@example.com
.
{"sql-server": null, "sa:example@example.com": null}
Criar tags
Com base nas tags de rede e nas contas de serviço de origem listadas no arquivo de mapeamento, é preciso criar as tags seguras correspondentes na rede.
As novas tags seguras substituem as tags de rede e as contas de serviço, preservando a configuração de rede original após a migração.
Como o principal com o papel de administrador de tags, crie o par de chave-valor de tag segura correspondente para cada tag de rede e conta de serviço.
gcloud resource-manager tags keys create TAG_KEY \ --parent organizations/ORGANIZATION_ID \ --purpose GCE_FIREWALL \ --purpose-data network=PROJECT_ID/NETWORK_NAME gcloud resource-manager tags values create TAG_VALUE \ --parent ORGANIZATION_ID/TAG_KEY
Substitua:
Por exemplo, se você tiver uma regra de firewall da VPC com uma tag de rede chamada sql-server
, crie um par de chave-valor de tag segura correspondente de sql-server:production
.
gcloud resource-manager tags keys create sql-server \ --parent organizations/123456 \ --purpose GCE_FIREWALL \ --purpose-data network=test-project/test-network gcloud resource-manager tags values create production \ --parent 123456/sql-server
Associar tags de rede e contas de serviço a tags
Depois de criar tags seguras controladas pelo IAM para cada tag de rede e conta de serviço usadas pelas regras de firewall da VPC, associe as tags para as tags de rede e contas de serviço correspondentes no arquivo JSON de mapeamento.
Edite o arquivo JSON para associar as tags de rede e as contas de serviço às tags seguras correspondentes.
{"sql-server": "tagValues/yyyyy", "sa:example@example.com": "tagValues/zzzzz"}
Por exemplo, o arquivo JSON a seguir associa a tag de redesql-server
ao valor "Tag" da chave sql-server
e a conta de serviço example@example.com
ao valor da tag da chave example@example.com
:
{"sql-server": "tagValues/production", "sa:example@example.com": "tagValues/example"}
Vincular tags a VMs
Com base no arquivo JSON de mapeamento de tags, vincule as tags seguras recém-criadas às VMs a que as tags de rede atuais estão anexadas:
Migrar regras de firewall da VPC para uma política de firewall de rede global
Migre as regras de firewall da VPC para uma política de firewall de rede
global. Use o comando compute-firewall-rules migrate
.
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --target-firewall-policy=POLICY_NAME \ --tag-mapping-file=TAG_MAPPING_FILE
Substitua:
Excluir 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:
Ver regras de firewall excluídas
Com base nos padrões de nomenclatura de regras de firewall excluídas, a ferramenta de migração não migra algumas regras de firewall, como as 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 as 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:
Para migrar regras de firewall excluídas que correspondem 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 preservando a ordem de avaliação
Durante a migração, se a ordem de avaliação de uma regra de firewall excluída ficar entre as ordens de avaliação das regras de firewall especificadas pelo usuário, a migração vai falhar.Isso 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 usuário na nova política de firewall de rede.
Por exemplo, se as regras de firewall tiverem as seguintes prioridades, a migração vai falhar.
Para forçar a ferramenta de migração a migrar as regras especificadas pelo usuário
preservando a ordem de avaliação original e ignorando
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:
Analisar a nova política de firewall de rede global
Antes de associar a política recém-criada a uma rede VPC, o Google recomenda que você revise a política para garantir que o processo de migração tenha sido concluído sem erros.
Confirme o seguinte:
Tarefas pós-migração
Para ativar e usar a nova política de firewall de rede global, conclua as tarefas pós-migração. Para mais informações, consulte Tarefas de pós-migração.