Como configurar o Acesso privado do Google

O Acesso privado do Google permite que instâncias de VM com apenas endereços IP internos (privados), sem endereços IP externos, acessem os endereços IP públicos das APIs e serviços do Google. O Acesso privado do Google é ativado no nível da sub-rede. Quando ativadas, as instâncias na sub-rede que têm apenas endereços IP particulares podem enviar tráfego para APIs e serviços do Google por meio da rota padrão (0.0.0.0/0), com um próximo salto para o gateway de Internet padrão.

O Acesso privado do Google permite o acesso a determinados serviços do Google Cloud por meio de instâncias de VM com apenas endereços IP internos. Para saber mais detalhes sobre o Acesso privado do Google e outras opções de acesso privado, consulte Opções de acesso privado para serviços.

Para visualizar as APIs e os serviços qualificados que podem ser usados com o Acesso privado do Google, consulte Serviços compatíveis na visão geral do Acesso privado do Google.

Especificações

Permissões

Proprietários de projetos, editores e membros do IAM com o papel de administrador de rede podem criar ou atualizar sub-redes e atribuir endereços IP.

Para saber mais informações sobre papéis, leia a documentação sobre os papéis do IAM.

Resolução de DNS para APIs e serviços

A resolução de DNS para domínios associados a APIs ou serviços do Google, incluindo *.googleapis.com e gcr.io, não é alterada quando o Acesso privado do Google é ativado para uma sub-rede. Os registros DNS de APIs e serviços do Google sempre apontam para endereços IP externos. O pool de endereços IP externos usado está sujeito a alterações, mas pode ser determinado com uma consulta a _spf.google.com e aos registros TXT mencionados.

Exemplo:

dig -t TXT _spf.google.com

O Acesso privado do Google funciona em conjunto com uma rota apropriada para permitir que as instâncias de VM com apenas endereços IP internos alcancem os endereços IP externos das APIs e serviços do Google.

Como gerar registros

O Stackdriver Logging captura todas as solicitações da API feitas de instâncias de VM em sub-redes que tenham o Acesso privado do Google ativado. As entradas de registro identificam a origem da solicitação da API usando o IP privado da instância.

Configure o uso diário e os relatórios de lançamento mensal para serem salvos em um intervalo do Cloud Storage. Consulte a página Como ver relatórios de uso para mais detalhes.

Requisitos

O Acesso privado do Google tem os requisitos a seguir:

  • O Acesso privado do Google não ativa automaticamente nenhuma API. Ative as APIs do Google que você precisa por meio da página "APIs e serviços" no Console do Google Cloud Platform separadamente.

  • O Acesso privado do Google requer uma rede VPC. Redes VPC de modo automático e personalizado são compatíveis. Redes legadas não são compatíveis.

  • O Acesso privado do Google se aplica somente a instâncias que têm apenas endereços IP internos. Ativar ou desativar o Acesso privado do Google não afeta as instâncias com endereços IP externos.

  • O Acesso privado do Google é ativado por sub-rede, quando ela é criada ou editada posteriormente. Quando ativado para uma sub-rede, o Acesso privado do Google se aplica a instâncias de VM novas e atuais nessa sub-rede que não têm endereços IP externos.

  • O Acesso privado do Google exige uma rota para os endereços IP públicos usados pelas APIs e serviços do Google. A rota padrão fornece esse caminho. Consulte a seção Roteamento para ver mais detalhes.

Roteamento

Como rotear com uma rota padrão

Em uma rede VPC típica, a finalidade principal da rota padrão é fornecer acesso à Internet para instâncias com endereços IP externos.

No entanto, o Acesso privado do Google usa a rota padrão para enviar tráfego para os endereços IP externos das APIs e serviços do Google de instâncias em sub-redes onde o Acesso privado do Google está ativado. Revise a visão geral de rotas para ver informações sobre como o roteamento funciona no GCP.

Não é possível usar uma rota padrão para o Acesso privado do Google se você tiver uma rota personalizada com um destino de 0.0.0.0/0 e um próximo salto diferente do default Internet gateway. Em vez disso, é preciso criar um conjunto de rotas personalizadas para atender ao requisito de roteamento do Acesso privado do Google. Por exemplo, crie rotas personalizadas nas seguintes situações:

  • Você tem uma rota estática personalizada para direcionar o tráfego destinado a 0.0.0.0/0 para um túnel do Cloud VPN ou para outra instância, como uma instância NAT.
  • Você usa um Cloud Router para aceitar uma rota dinâmica personalizada com um destino de 0.0.0.0/0.

Roteamento avançado

É possível criar um conjunto de rotas estáticas personalizadas para enviar tráfego aos endereços IP externos das APIs e serviços do Google. O próximo salto para cada rota nesse conjunto precisa ser o default Internet gateway, mas o destino de cada um é um intervalo de endereço IP exclusivo do conjunto de intervalos usados pelas APIs e serviços do Google. Veja Resolução de DNS para APIs e serviços para determinar esses intervalos de IP.

Como verificar uma rota padrão

Para saber se existe uma rota padrão para uma determinada rede, use o Console do GCP ou a ferramenta de linha de comando gcloud:

Console

  1. Acesse a página "Rotas" no Console do Google Cloud Platform.
    Acessar a página "Rotas"
  2. Filtre a lista de rotas para mostrar apenas as rotas da rede que você precisa inspecionar.
  3. Procure uma rota com destino 0.0.0.0/0 e em que o próximo salto seja o gateway de Internet padrão.

gcloud

Use o comando gcloud a seguir, substituindo [NETWORK-NAME] pelo nome da rede a ser inspecionada:

gcloud compute routes list --filter="default-internet-gateway [NETWORK-NAME]"

Como criar rotas obrigatórias

Se for possível usar a rota padrão para o Acesso privado do Google e é necessário recriá-la, crie uma rota estática personalizada de substituição com o destino e o próximo salto a seguir:

  • Destino: 0.0.0.0/0
  • Próximo salto: gateway de Internet padrão

Se não for possível usar a rota padrão, será possível criar várias rotas estáticas personalizadas para atender ao requisito de roteamento do Acesso privado do Google, em que cada rota tem o destino e o próximo salto a seguir:

Regras de firewall

Além de atender aos requisitos de roteamento, as regras de firewall em sua rede precisam permitir o acesso de VMs às APIs do Google e aos serviços do GCP.

Para instâncias que usam o Acesso privado do Google, permita o tráfego de saída delas para as APIs e serviços do Google. Se você tiver uma regra de firewall que nega o tráfego de saída, aplique-a seletivamente a outras instâncias que não precisam do Acesso privado do Google ou substitua essa regra criando uma de maior prioridade para permitir tráfego para APIs e serviços do Google. Se você optar por criar uma regra de firewall de maior prioridade para permitir o tráfego para o Acesso privado do Google, considere as opções a seguir:

  • Crie uma regra de firewall que permita a saída para o intervalo de endereços 0.0.0.0/0, que indica que a saída pode ir para qualquer destino. Aplique essa regra apenas a instâncias que exigem o Acesso privado do Google definindo tags de meta na regra de firewall. Use uma tag de origem ou conta de serviço nas instâncias. Criar uma regra que se aplique apenas a metas específicas que não tenham endereços IP externos compensa o amplo intervalo de destino. Instâncias sem endereços IP externos não podem enviar pacotes fora da rede VPC. Veja os requisitos de acesso à Internet para saber detalhes.
  • Se você permitir o tráfego do Acesso privado do Google criando várias regras de firewall para permitir a saída para destinos específicos, analise e atualize periodicamente essas regras para que elas incluam todos os intervalos de endereços IP possíveis usados pelas APIs e serviços do Google. Consulte a seção Resolução de DNS para APIs e serviços para determinar esses intervalos de IP.

Etapas da configuração

Por padrão, o Acesso privado do Google não está ativado. Ative-o ao criar uma sub-rede e pode ativá-lo ou desativá-lo ao editar uma sub-rede.

Como ativar o Acesso privado do Google

Siga estas etapas para ativar o Acesso privado do Google:

Console

  1. Acesse a página Redes VPC no Console do Google Cloud Platform.
    Acessar a página “Redes VPC”
  2. Clique no nome da rede que contém a sub-rede para a qual você precisa ativar o Acesso privado do Google.
  3. Para uma sub-rede atual:
    1. Clique no nome da sub-rede. A página Detalhes da sub-rede é exibida.
    2. Clique em Editar.
    3. Na seção Acesso privado do Google , selecione Ativado.
    4. Clique em Salvar.
  4. Para uma nova sub-rede:
    1. Clique em Adicionar sub-rede.
    2. Especifique o Nome e a Região da nova sub-rede.
    3. Especifique o Intervalo de endereços IP da sub-rede. Esse intervalo não pode sobrepor nenhuma sub-rede na rede VPC atual ou em qualquer rede conectada por peering de rede VPC ou VPN.
    4. Se você quiser criar um intervalo secundário para essa sub-rede, clique em Criar um intervalo de IP secundário.
    5. Selecione Ativado na seção Acesso privado do Google.
    6. Clique em Adicionar.

gcloud

Para uma sub-rede atual:

  1. Determine o nome e a região da sub-rede. Para listar as sub-redes de uma rede específica, use o comando a seguir, substituindo [NETWORK-NAME] pelo nome da rede:

    gcloud compute networks subnets list --filter=[NETWORK-NAME]
    
  2. Execute o comando a seguir para ativar o Acesso privado do Google, substituindo [SUBNET-NAME] pelo nome da sub-rede e [REGION] pela região:

    gcloud compute networks subnets update [SUBNET-NAME] \
    --region [REGION] \
    --enable-private-ip-google-access
    
  3. Execute o comando a seguir para verificar se o Acesso privado do Google está ativado:

    gcloud compute networks subnets describe [SUBNET-NAME] \
    --region [REGION] \
    --format="get(privateIpGoogleAccess)"
    

Ao criar uma nova sub-rede, adicione o parâmetro --enable-private-ip-google-access. O exemplo a seguir cria uma nova sub-rede:

gcloud compute networks subnets create [SUBNET-NAME] \
--region [REGION] \
--network [NETWORK] \
--range [IP-RANGE] \
--enable-private-ip-google-access

Em que:

  • [SUBNET-NAME] é o nome da sub-rede;
  • [NETWORK] é o nome da rede VPC que conterá a sub-rede;
  • [IP-RANGE] é o intervalo de endereço IP principal da sub-rede;
  • [REGION] é a região da sub-rede;

Como desativar o Acesso privado do Google

Siga estas etapas para desativar o Acesso privado do Google para uma sub-rede:

Console

  1. Acesse a página Redes VPC no Console do Google Cloud Platform.
    Acessar a página “Redes VPC”
  2. Clique no nome da rede que contém a sub-rede para a qual você precisa desativar o Acesso privado do Google.
  3. Clique no nome de uma sub-rede atual. A página Detalhes da sub-rede é exibida.
  4. Clique em Editar.
  5. Na seção Acesso privado do Google, selecione Desativado.
  6. Clique em Salvar.

gcloud

  1. Determine o nome e a região da sub-rede. Para listar as sub-redes de uma rede específica, use o comando a seguir, substituindo [NETWORK-NAME] pelo nome da rede:

    gcloud compute networks subnets list --filter=[NETWORK-NAME]
    
  2. Execute o comando a seguir para desativar o Acesso privado do Google, substituindo [SUBNET-NAME] pelo nome da sub-rede e [REGION] pela região:

    gcloud compute networks subnets update [SUBNET-NAME] \
    --region [REGION] \
    --no-enable-private-ip-google-access
    
  3. Execute o comando a seguir para verificar se o Acesso privado do Google está ativado:

    gcloud compute networks subnets describe [SUBNET-NAME] \
    --region [REGION] \
    --format="get(privateIpGoogleAccess)"
    

Como remover endereços IP externos de instâncias

Como o Acesso privado do Google só é relevante para instâncias sem endereços IP externos, talvez seja necessário modificar as instâncias em execução depois que você ativar o Acesso privado do Google para uma sub-rede. Para remover um endereço IP externo de uma instância, consulte Como cancelar a atribuição de um endereço IP externo estático na documentação do Compute Engine.

Para saber mais informações sobre endereços IP de instâncias, consulte Endereços IP na documentação do Compute Engine.

A seguir

Esta página foi útil? Conte sua opinião sobre: