Nesta página, explicamos como configurar a atualização em lote para todas as regras de política de firewall (hierárquicas e de firewall de rede). Para realizar a atualização em lote, use a Google Cloud CLI ou a API Compute Engine.
Para mais informações sobre atualizações em lote, consulte Visão geral.
Se você estiver usando a CLI gcloud para atualizar em lote as regras da política de firewall, use os seguintes comandos da CLI gcloud:
export-rules: permite exportar a configuração das regras da política de firewall para um arquivo YAML. No arquivo YAML, é possível adicionar, modificar e remover a configuração das regras da política de firewall de acordo com seus requisitos.import-rules: permite importar o arquivo de configuração das regras da política de firewall modificadas. Isso substitui as regras atuais da política de firewall especificada.
Se você estiver usando APIs REST para atualizar em lote as regras da política de firewall, use o método patch. O método patch permite substituir
todas as regras na política de firewall fornecendo o campo rules na
solicitação. Não é necessário criar um arquivo YAML. Ao usar o método patch,
mantenha as regras goto_next padrão com a prioridade mais baixa.
Antes de começar
Configure a autenticação, caso ainda não tenha feito isso. A autenticação é o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud . Para executar códigos ou amostras de um ambiente de desenvolvimento local, faça a autenticação no Compute Engine conforme descrito nesta seção.
Console
Quando você usa o console Google Cloud para acessar serviços Google Cloud e APIs, não é necessário configurar a autenticação.
gcloud
Depois de instalar a Google Cloud CLI, inicialize-a executando o seguinte comando:
gcloud init
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
Defina a região e a zona padrão no seu cliente local.
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.
Depois de instalar a Google Cloud CLI, inicialize-a executando o seguinte comando:
gcloud init
Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud com sua identidade federada.
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação doGoogle Cloud .
Criar um arquivo YAML
Use o comando export-rules para exportar as regras de política de firewall atuais para um
arquivo YAML. Para mais informações, consulte Exportar regra de política de firewall.
O arquivo YAML exportado inclui as regras goto_next padrão
com a menor prioridade (regras com prioridade maior ou
igual a 2147483644). Não modifique essas regras goto_next
padrão.
No entanto, se você não quiser usar o comando export-rules, também poderá
criar um arquivo YAML manualmente para editar as regras. Para criar um arquivo YAML manualmente, faça o seguinte:
Crie um arquivo YAML
RULES_YAML_FILE. SubstituaRULES_YAML_FILEpor um nome de arquivo de sua escolha.Adicione o campo
rulesao arquivo YAML. O camporulescontém uma lista das regras da política de firewall. Para um esquema que descreve o formato de exportação ou importação, consulteCLOUDSDKROOT/lib/googlecloudsdk/schemas/compute/beta/FirewallPolicy.yaml. Em queCLOUDSDKROOTé o diretório de instalação da Google Cloud CLI.Confira a seguir um exemplo de 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 regras da política de firewall, consulte Modificar regras da política de firewall.
Exportar regra da política de firewall
É possível iniciar atualizações usando a gcloud CLI ou a API Compute Engine.
Exportar política de firewall hierárquica
Exporte as regras da política de firewall da política hierárquica de firewall.
gcloud
Para exportar regras de uma política de firewall hierárquica, use o
comando gcloud compute firewall-policies export-rules:
gcloud compute firewall-policies export-rules FIREWALL_POLICY \
--destination=DESTINATION \
--organization=ORGANIZATION
Substitua:
FIREWALL_POLICY: o nome abreviado ou ID da política de firewall hierárquica de que você quer exportar as regras.DESTINATION: caminho para um arquivo YAML em que a configuração será exportadaORGANIZATION: a organização em que a política de firewall da organização será atualizada. Precisa ser definido seFIREWALL_POLICYfor um nome curto
API
Para exportar as regras atuais da política de firewall hierárquica, use o
método firewallPolicies.get
na API Compute Engine:
GET https://compute.googleapis.com/compute/v1/locations/global/firewallPolicy/FIREWALL_POLICY_NAME
Substitua:
FIREWALL_POLICY_NAME: o nome da política de firewall que você quer exportarEssa solicitação retorna uma definição de recurso de política de firewall.
Exportar política de firewall de rede
Exporte as regras de firewall da política de firewall de rede.
gcloud
Para exportar a configuração das regras da política de firewall de rede para um arquivo, use o
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
Substitua:
FIREWALL_POLICY: nome da política de firewall de rede de onde exportar as regrasRULES_YAML_FILE_PATH: caminho para um arquivo YAML em que a configuração é exportadaREGION: especifique--globalse for uma política global ouREGIONse for regional.
API
Para exportar as regras atuais da política de firewall de rede global, use o
método networkFirewallPolicies.get
na API Compute Engine:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/firewallPolicies/FIREWALL_POLICY_NAME
Substitua:
PROJECT: ID do projetoFIREWALL_POLICY_NAME: o nome da política de firewall que você quer exportar
Para exportar as regras atuais da política de firewall de rede regional, use o
método regionNetworkFirewallPolicies.get
na API Compute Engine:
GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/firewallPolicies/FIREWALL_POLICY_NAME
Substitua:
PROJECT: ID do projetoREGION: a região das regras da política de firewallFIREWALL_POLICY_NAME: o nome da política de firewall que você quer exportar
Essa solicitação retorna uma definição de recurso de política de firewall.
Modificar regras da política de firewall
Modifique as regras da política de firewall que você exportou na seção anterior.
Abra o arquivo exportado. Por exemplo,
RULES_YAML_FILEAdicione o campo
rules, conforme mostrado no exemplo a seguir.rules: -action: allow description: test-rule1 direction: INGRESS disabled: false enableLogging: false kind: compute#firewallPolicyRuleAdicione os outros campos de configuração, como
action,directionepriority. Confira a seguir um exemplo de arquivo 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
Importar regras da política de firewall
Importe as regras para sua política de firewall depois de mudar o arquivo com as atualizações em lote necessárias. A importação do arquivo modificado substitui as regras de política de firewall atuais pelas regras fornecidas.
Importar regras de política de firewall hierárquica
Importe regras de firewall para a política de firewall hierárquica.
gcloud
Para importar regras para a política hierárquica de firewall, use o
comando gcloud compute firewall-policies import-rules:
gcloud compute firewall-policies import-rules FIREWALL_POLICY \
--source=RULES_YAML_FILE_PATH \
--organization=ORGANIZATION
Substitua:
FIREWALL_POLICY: o nome abreviado ou ID da política de firewall hierárquica a ser atualizadaRULES_YAML_FILE_PATH: caminho para o arquivo YAML de onde importar regrasORGANIZATION: a organização em que a política de firewall da organização será atualizada. Precisa ser definido seFIREWALL_POLICYfor um nome abreviado.
API
Para importar as regras da política de firewall, use o
método firewallPolicies.patch
na API Compute Engine:
PATCH https://compute.googleapis.com/compute/v1/locations/global/firewallPolicy/FIREWALL_POLICY_NAME
Substitua:
FIREWALL_POLICY_NAME: o nome da política de firewall que você quer exportarEssa solicitação retorna uma definição de recurso de política de firewall.
Importar política de firewall de rede
Importe o arquivo YAML das regras de firewall modificadas para a política de firewall de rede.
gcloud
Para importar regras para a política de firewall de rede, use o
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
Substitua:
FIREWALL_POLICY: nome da política de firewall de rede a ser atualizadaRULES_YAML_FILE_PATH: o caminho escolhido para importar as regrasREGION: especifique--globalse for uma política global ouREGIONse for uma política regional.
API
Para importar as regras modificadas da política de firewall de rede, use o
método networkFirewallPolicies.patch
na API Compute Engine:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/global/firewallPolicy/FIREWALL_POLICY_NAME
Substitua:
PROJECT: o ID do projeto das regras da política de firewall de redeFIREWALL_POLICY_NAME: o nome da política de firewall de rede que você quer exportar
Para importar as regras modificadas da política de firewall de rede regional, use o
método regionNetworkFirewallPolicies.patch
na API Compute Engine:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/firewallPolicies/FIREWALL_POLICY_NAME
Substitua:
PROJECT: o ID do projeto das regras de política de firewall de rede regionalREGION: a região das regras da política de firewallFIREWALL_POLICY_NAME: o nome da política de firewall que você quer exportarEssa solicitação retorna uma definição de recurso de política de firewall de rede.
A seguir
- Para uma introdução às regras de firewall, consulte Componentes de regra da política de firewall.
- Para uma visão geral da atualização em lote das regras da política de firewall, consulte Visão geral.