Como criar uma VPN clássica usando o roteamento estático

Nesta página, descrevemos como usar o roteamento estático para criar um gateway da VPN clássica e um túnel. Este túnel é baseado em uma política ou em uma rota.

A VPN baseada em rota permite especificar somente o seletor de tráfego remoto. Se você precisar especificar um seletor de tráfego local, crie um túnel do Cloud VPN que use roteamento com base em políticas.

Para mais informações sobre o Cloud VPN, consulte os seguintes recursos:

Opções de roteamento

Quando você usa o Console do Google Cloud para criar um túnel com base em políticas, a VPN clássica executa as seguintes tarefas:

  • Define o seletor de tráfego local do túnel para o intervalo IP especificado.
  • Define o seletor de tráfego remoto do túnel para os intervalos de IP especificados em intervalos de IP de rede remota
  • Para cada intervalo em Intervalos de IP de rede remota, o Google Cloud cria uma rota estática personalizada que tenha como destino (prefixo) o CIDR do intervalo e da qual o próximo salto é o túnel.

Quando você usa o Console do Cloud para criar um túnel baseado em rota, a VPN clássica executa as seguintes tarefas:

  • Define os seletores locais e remotos do túnel para qualquer endereço IP (0.0.0.0/0).
  • Para cada intervalo em Intervalos de IP de rede remota, o Google Cloud cria uma rota estática personalizada que tenha como destino (prefixo) o CIDR do intervalo e da qual o próximo salto é o túnel.

Ao usar a ferramenta de linha de comando gcloud para criar um túnel com base em políticas ou um túnel baseado em rota, os seletores de tráfego para o túnel são definidos da mesma maneira. No entanto, como a criação de rotas estáticas personalizadas é feita com comandos separados, você tem mais controle sobre essas rotas.

O número de CIDRs que podem ser especificados em um seletor de tráfego depende da versão de IKE.

Para informações importantes, consulte:

Antes de começar

Configure os seguintes itens no Google Cloud para facilitar a configuração do Cloud VPN:

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No Console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.

  4. Instale e inicialize o SDK do Cloud..
  5. No Console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  6. Verifique se o faturamento está ativado para seu projeto na nuvem. Saiba como confirmar se o faturamento está ativado para o projeto.

  7. Instale e inicialize o SDK do Cloud..
  1. Se você estiver usando a ferramenta de linha de comando gcloud, defina o ID do projeto com o comando a seguir. As instruções gcloud nesta página presumem que você tenha definido o ID do projeto antes de emitir comandos.

        gcloud config set project PROJECT_ID
        
  1. É possível também visualizar um ID do projeto que já foi definido executando o seguinte comando:

        gcloud config list --format='text(core.project)'
        

Como criar uma rede e uma sub-rede VPC personalizadas

Antes de criar um gateway e um túnel de VPN clássica, crie uma rede de nuvem privada virtual (VPC) e pelo menos uma sub-rede na região onde o gateway da VPN clássica reside:

Como criar um gateway e um túnel

O assistente de configuração da VPN é a única opção de console para criar um gateway de VPN clássica. O assistente inclui todas as etapas de configuração necessárias para criar um gateway de VPN clássica, túneis, sessões do BGP e um recurso de gateway de VPN externa. No entanto, é possível concluir algumas etapas depois, como configurar sessões do BGP.

Console

Configure o gateway

  1. No Console do Google Cloud, acesse a página VPN.

    Acessar a VPN

  2. Se você estiver criando um gateway pela primeira vez, clique em Criar conexão VPN.

  3. Selecione o assistente de configuração de VPN.

  4. Selecione o botão de opção VPN clássica.

  5. Clique em Continuar.

  6. Na página Criar uma conexão de VPN, especifique as seguintes configurações de gateway:

    • Nome: o nome do gateway da VPN. Não é possível alterá-lo posteriormente.
    • Descrição: se quiser, adicione uma descrição.
    • Rede: especifique uma rede de VPC atual em que o túnel e o gateway da VPN serão criados.
    • Região: os gateways e túneis do Cloud VPN são objetos regionais. Escolha uma região do Google Cloud onde o gateway será localizado. Instâncias e outros recursos em diferentes regiões usam o túnel para o tráfego de saída sujeito à ordem das rotas. Para um melhor desempenho, localize o gateway e o túnel na mesma região que os recursos relevantes do Google Cloud.
    • Endereço IP: crie ou escolha um endereço IP externo regional atual.

Configurar túneis

  1. Para o novo túnel, na seção Túneis, especifique as seguintes configurações:

    • Nome: o nome do túnel da VPN. Não é possível alterá-lo posteriormente.
    • Descrição: se quiser, insira uma descrição.
    • Endereço IP de peering remoto: especifique o endereço IP externo do gateway de VPN de peering.
    • Versão do IKE: escolha a versão do IKE adequada compatível com o gateway da VPN de peering. O IKEv2 tem preferência se for compatível com o dispositivo de peering.
    • Chave IKE pré-compartilhada: forneça uma chave pré-compartilhada (secreta compartilhada) usada para autenticação. A senha secreta do túnel do Cloud VPN precisa corresponder àquela usada ao configurar o túnel de contrapartida no gateway da VPN de peering. Para gerar uma chave pré-compartilhada criptograficamente forte, siga estas instruções.

    Para túneis com base em políticas

    1. Em Opções de roteamento, selecione com base em políticas.
    2. Em Intervalos de IP de rede remota, forneça uma lista separada por espaço dos intervalos de IP usados pela rede de peering. Este é o seletor de tráfego remoto ou o lado direito da perspectiva do Cloud VPN.
    3. Em Intervalos de IP local, selecione umdos seguintes métodos:
      • Para escolher um intervalo de IP local atual, use o menu Sub-redes locais.
      • Para inserir uma lista de intervalos de IP separados por espaço usados na rede VPC, use o campo Intervalos de IP local. Para considerações importantes, consulte Túneis com base em políticas e seletores de tráfego.

    Para túneis com base em rotas

    1. Em Opções de roteamento, selecione Baseado em rota.s
    2. Em Intervalos de IP de rede remota, forneça uma lista separada por espaço dos intervalos de IP usados pela rede de peering. Esses intervalos são usados para criar rotas estáticas personalizadas que tenha como próximo salto este túnel de VPN.
  2. Caso seja preciso criar mais túneis no mesmo gateway, clique em Adicionar túnel e repita a etapa anterior. Também é possível adicionar mais túneis posteriormente.

  3. Clique em Criar.

gcloud

Para criar um gateway do Cloud VPN, conclua a sequência de comandos a seguir. Nos comandos, substitua o seguinte:

  • PROJECT_ID: ID do projeto
  • NETWORK: o nome da sua rede do Google Cloud.
  • REGION: a região do Google Cloud em que você cria o gateway e o túnel
  • GW_NAME: o nome do gateway.
  • GW_IP_NAME: um nome para o endereço IP externo usado pelo gateway.
  • Opcional: a --target-vpn-gateway-region é a região do gateway de VPN clássica para operar. Seu valor precisa ser igual a --region. Se não for especificada, esta opção será definida automaticamente. Ela modifica o valor padrão da propriedade compute/region para esta invocação de comando.

Configure os recursos do gateway

  1. Crie o objeto de gateway da VPN de destino.

    gcloud compute target-vpn-gateways create GW_NAME \
       --network=NETWORK \
       --region=REGION \
       --project=PROJECT_ID
    
  2. Reserve um endereço IP estático externo regional:

    gcloud compute addresses create GW_IP_NAME \
       --region=REGION \
       --project=PROJECT_ID
    
  3. Observe o endereço IP para usá-lo ao configurar o gateway da VPN de peering:

    gcloud compute addresses describe GW_IP_NAME \
       --region=REGION \
       --project=PROJECT_ID \
       --format='flattened(address)'
    
  4. criar três regras de encaminhamento; Essas regras instruem o Google Cloud a enviar o tráfego ESP (IPsec), UDP 500 e UDP 4500 para o gateway:

    gcloud compute forwarding-rules create fr-GW_NAME-esp \
       --ip-protocol=ESP \
       --address=GW_IP_NAME \
       --target-vpn-gateway=GW_NAME \
       --region=REGION \
       --project=PROJECT_ID
    
    gcloud compute forwarding-rules create fr-GW_NAME-udp500 \
       --ip-protocol=UDP \
       --ports=500 \
       --address=GW_IP_NAME \
       --target-vpn-gateway=GW_NAME \
       --region=REGION \
       --project=PROJECT_ID
    
    gcloud compute forwarding-rules create fr-GW_NAME-udp4500 \
       --ip-protocol=UDP \
       --ports=4500 \
       --address=GW_IP_NAME \
       --target-vpn-gateway=GW_NAME \
       --region=REGION \
       --project=PROJECT_ID
    

Crie o túnel do Cloud VPN

  1. Nos comandos, substitua o seguinte:

    • TUNNEL_NAME: um nome para o túnel.
    • ON_PREM_IP: o endereço IP externo do gateway da VPN de peering.
    • IKE_VERS: 1 IKEv1 ou2 para IKEv2
    • SHARED_SECRET: sua chave pré-compartilhada (secreta compartilhada). A senha secreta do túnel do Cloud VPN precisa corresponder àquela usada ao configurar o túnel de contrapartida no gateway da VPN de peering. Para gerar uma chave pré-compartilhada criptograficamente forte, siga estas instruções.

    Para VPN baseada em política:

    • LOCAL_IP_RANGES: uma lista delimitada por vírgulas dos intervalos de IP do Google Cloud. Por exemplo, é possível fornecer o bloco CIDR para cada sub-rede em uma rede VPC. Este é o “lado esquerdo” na perspectiva do Cloud VPN.
    • REMOTE_IP_RANGES: uma lista delimitada por vírgulas dos intervalos de IP da rede de peering. Este é o “lado direito”na perspectiva do Cloud VPN.

    Para configurar um túnel VPN com base em políticas, execute o seguinte comando:

    gcloud compute vpn-tunnels create TUNNEL_NAME \
        --peer-address=ON_PREM_IP \
        --ike-version=IKE_VERS \
        --shared-secret=SHARED_SECRET \
        --local-traffic-selector=LOCAL_IP_RANGES \
        --remote-traffic-selector=REMOTE_IP_RANGES \
        --target-vpn-gateway=GW_NAME \
        --region=REGION \
        --project=PROJECT_ID
    

    Para a VPN com base em rota, os seletores de tráfego locais e remotos são 0.0.0.0/0, conforme definido nas opções de roteamento e nos seletores de tráfego.

    Para configurar um túnel VPN com base em rota, execute o seguinte comando:

    gcloud compute vpn-tunnels create TUNNEL_NAME \
        --peer-address=ON_PREM_IP \
        --ike-version=IKE_VERS \
        --shared-secret=SHARED_SECRET \
        --local-traffic-selector=0.0.0.0/0 \
        --remote-traffic-selector=0.0.0.0/0 \
        --target-vpn-gateway=GW_NAME \
        --region=REGION \
        --project=PROJECT_ID
    
  2. Crie uma rota estática para cada intervalo de IP remoto especificado na --remote-traffic-selector na etapa anterior. Repita esse comando para cada intervalo de IP remoto. Substitua ROUTE_NAME por um nome exclusivo para a rota e REMOTE_IP_RANGE pelo intervalo de IP remoto apropriado.

    gcloud compute routes create ROUTE_NAME \
        --destination-range=REMOTE_IP_RANGE \
        --next-hop-vpn-tunnel=TUNNEL_NAME \
        --network=NETWORK \
        --next-hop-vpn-tunnel-region=REGION \
        --project=PROJECT_ID
    

Como concluir a configuração

Antes de usar um novo gateway do Cloud VPN e o túnel de VPN associado, conclua as etapas a seguir:

  1. Defina o gateway da VPN de peering e configure o túnel correspondente. Para ver instruções, consulte os links a seguir:
  2. Configure regras de firewallno Google Cloud e na rede de peering, conforme necessário.
  3. Verifique o status do seu túnel VPN e das regras de encaminhamento.
  4. Para ver suas rotas da VPN, acesse a tabela de roteamento do projeto e filtre por Next hop type:VPN tunnel:

    Acessar a página "Rotas".

Como aplicar uma restrição da política da organização que restrinja endereços IP do gateway da VPN de peering

É possível criar uma restrição de política da organização do Google Cloud que defina um conjunto de endereços IP permitidos ou negados para fazer o peering de gateways de VPN por meio da VPN clássica ou de túneis de VPN de alta disponibilidade. Essa restrição contém uma lista de permissões ou uma lista de negação desses endereços IP de peering, que entra em vigor para os túneis do Cloud VPN que você criou depois de aplicar a restrição. Para detalhes, consulte Como restringir endereços IP de mesmo nível por meio de um túnel do Cloud VPN.

Para criar uma política da organização e associá-la a uma organização, pasta ou projeto, use os exemplos listados nas próximas seções e siga as etapas em Como usar restrições.

Permissões necessárias

Para definir uma restrição de IP de peering no nível da organização ou do projeto, primeiro você precisa receber o papel de Administrador de políticas da organização ()roles/orgpolicy.policyAdmin para sua organização.

Como restringir a conectividade a partir de endereços IP de peering específicos

Para permitir apenas endereços IP de peering específicos por meio de um túnel do Cloud VPN, execute as seguintes etapas:

  1. Encontre o código da sua organização executando o seguinte comando:
    gcloud organizations list

    A resposta ao comando terá a seguinte aparência:

          DISPLAY NAME             ID
          example-organization     29252605212
        
  2. Crie um arquivo JSON que defina sua política, como no exemplo a seguir:

         {
           "constraint": "constraints/compute.restrictVpnPeersIPs",
           "listPolicy": {
             "allowedValues": [
               "100.1.1.1",
             ],
           }
         }
       
  3. Para definir a política da organização, use o comando gcloud do Resource Manager set-policy, passando o arquivo JSON e usando o ORGANIZATION_ID encontrado na etapa anterior.

Como restringir a conectividade de qualquer endereço IP de peering

Para proibir a criação de qualquer novo túnel do Cloud VPN, siga as etapas neste exemplo de restrição.

  1. Encontre o ID da organização ou o ID do nó na hierarquia de recursos em que você quer definir uma política.
  2. Crie um arquivo JSON como o exemplo a seguir.

        {
          "constraint": "constraints/compute.restrictVpnPeersIPs",
          "listPolicy": {
            "allValues": "DENY"
          }
        }
    
  3. Transmita o arquivo JSON inserindo o mesmo comando que você usaria para restringir endereços IP de peering específicos.

A seguir

  • Para usar cenários de alta disponibilidade e alta capacidade ou vários cenários de sub-rede, consulte Configurações avançadas.
  • Para ajudar a resolver problemas comuns que você pode encontrar ao usar o Cloud VPN, consulte Solução de problemas.