Criar uma rede virtual com uma conexão VPN site a site usando a CLI
Este artigo mostra como usar a CLI do Azure para criar uma conexão de gateway de VPN site a site de sua rede local para a rede virtual. As etapas neste artigo se aplicam ao modelo de implantação do Resource Manager. Você também pode criar essa configuração usando uma ferramenta de implantação ou um modelo de implantação diferente, selecionando uma opção diferente na lista a seguir:
Uma conexão de gateway de VPN site a site é usada para conectar a rede local a uma rede virtual do Azure por um túnel VPN IPsec/IKE (IKEv1 ou IKEv2). Esse tipo de conexão exige um dispositivo VPN localizado no local que tenha um endereço IP público voltado para o exterior atribuído a ele. Para saber mais sobre os gateways de VPN, veja Sobre o gateway de VPN.
Antes de começar
Verifique se você atende aos seguintes critérios antes de iniciar a configuração:
- Verifique se você possui um dispositivo VPN compatível e alguém que possa configurá-lo. Para obter mais informações sobre dispositivos VPN compatíveis e a configuração de dispositivo, confira Sobre dispositivos VPN.
- Verifique se você possui um endereço IPv4 público voltado para o exterior para seu dispositivo VPN.
- Se você não estiver familiarizado com os intervalos de endereço IP localizados na configuração de rede local, fale com alguém que possa lhe dar essa informação. Ao criar essa configuração, você deve especificar os prefixos de intervalo de endereços IP que o Azure roteará para seu local. Nenhuma das sub-redes da rede local podem se sobrepor às sub-redes de rede virtual às quais você deseja se conectar.
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, confira Início Rápido para Bash no Azure Cloud Shell.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para obter mais informações, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para ver outras opções de entrada, confira Conectar-se com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
- Este artigo exige a versão 2.0 ou posterior da CLI do Azure. Se você está usando o Azure Cloud Shell, a versão mais recente já está instalada.
Valores de exemplo
Você pode usar os seguintes valores para criar um ambiente de teste ou fazer referência a esses valores para entender melhor os exemplos neste artigo:
#Example values
VnetName = VNet1
ResourceGroup = TestRG1
Location = eastus
AddressSpace = 10.1.0.0/16
SubnetName = Frontend
Subnet = 10.1.0.0/24
GatewaySubnet = 10.1.255.0/27
LocalNetworkGatewayName = Site1
LNG Public IP = <On-premises VPN device IP address>
LocalAddrPrefix1 = 10.0.0.0/24
LocalAddrPrefix2 = 20.0.0.0/24
GatewayName = VNet1GW
PublicIP = VNet1GWIP
GatewayType = Vpn
ConnectionName = VNet1toSite2
1. Conectar-se com as suas assinaturas
Se você optar por executar a CLI localmente, conecte-se à sua assinatura. Se você estiver usando o Azure Cloud Shell no navegador, não precisa se conectar à sua assinatura. Você se conectará automaticamente no Azure Cloud Shell. No entanto, talvez seja necessário verificar se você está usando a assinatura correta depois de se conectar.
Inicie sessão na sua assinatura do Azure com o comando az login e siga as instruções na tela. Para obter mais informações sobre como conectar-se, confira Introdução à CLI do Azure.
az login
Se tiver mais de uma assinatura do Azure, liste as assinaturas para a conta.
az account list --all
Especifique a assinatura que você deseja usar.
az account set --subscription <replace_with_your_subscription_id>
2. Criar um grupo de recursos
O exemplo a seguir cria um grupo de recursos denominado 'TestRG1' no local 'eastus'. Se já tiver um grupo de recursos na região em que deseja criar a rede virtual, você poderá usá-lo.
az group create --name TestRG --location eastus
3. Criar uma rede virtual
Se você ainda não tiver uma rede virtual, crie uma usando o comando az network vnet create. Ao criar uma rede virtual, certifique-se de que os espaços de endereço que você especificar não se sobreponham nenhum espaço de endereço que você tenha na rede local.
Observação
Para que essa rede virtual conecte a um local, é necessário coordenar com o administrador de rede local para que ele consiga um intervalo de endereços IP que você pode usar especificamente para essa rede virtual. Se um intervalo de endereços duplicado existir em ambos os lados da conexão de VPN, o tráfego não será roteado da maneira esperada. Além disso, se você deseja se conectar esta rede virtual a outra rede virtual, o espaço de endereços não pode sobrepor outra rede virtual. Tome cuidado e planeje sua configuração de rede de forma adequada.
O exemplo a seguir cria uma rede virtual chamada ''VNet1'' e uma sub-rede ''Subrede 1''.
az network vnet create --name VNet1 --resource-group TestRG1 --address-prefix 10.1.0.0/16 --location eastus --subnet-name Subnet1 --subnet-prefix 10.1.0.0/24
4. Criar a sub-rede de gateway
O gateway de rede virtual usa uma sub-rede específica denominada sub-rede de gateway. O gateway faz parte do intervalo de endereços IP de rede virtual que você especifica ao configurar sua rede virtual. Contém os endereços IP usados pelos recursos e serviços do gateway de rede virtual. A sub-rede deve ser denominada "GatewaySubnet" para que o Azure implante os recursos de gateway. Você não pode especificar uma sub-rede diferente para implantação dos recursos de gateway. Se você não tiver uma sub-rede denominada "GatewaySubnet", quando você criar o gateway de VPN, ele falhará.
Quando você cria a sub-rede de gateway, pode especificar o número de endereços IP que contém a sub-rede. O número de endereços IP necessários depende da configuração do gateway VPN que você deseja criar. Algumas configurações exigem mais endereços IP do que outras. Recomendamos que você crie uma sub-rede de gateways que usa um /27 ou /28.
Se você vir um erro que especifica que o espaço de endereço se sobrepõe a uma sub-rede, ou que a sub-rede não está contida no espaço de endereço para sua rede virtual, verifique o intervalo de endereços de VNet. Talvez você não tenha endereços IP suficientes disponíveis no intervalo de endereços que você criou para sua rede virtual. Por exemplo, se a sua sub-rede padrão envolver todo o intervalo de endereços, não restará qualquer endereço IP para criar outras sub-redes. Você pode ajustar suas sub-redes no espaço de endereço existente a fim de liberar endereços IP, ou especificar um intervalo de endereços adicional e criar ali a sub-rede de gateway.
Execute o comando azure network vnet subnet create para criar uma sub-rede de gateway.
az network vnet subnet create --address-prefix 10.1.255.0/27 --name GatewaySubnet --resource-group TestRG1 --vnet-name VNet1
Importante
Não há suporte para NSGs (grupos de segurança de rede) na sub-rede do gateway. A associação de um grupo de segurança de rede a essa sub-rede pode fazer com que seu Gateway de rede virtual (Gateways de VPN e ExpressRoute) pare de funcionar conforme o esperado. Para obter mais informações sobre grupos de segurança de rede, confira O que é um grupo de segurança de rede?
5. Criar o gateway de rede local
O gateway de rede local geralmente se refere ao seu local. Você atribui um nome ao site pelo qual o Azure pode fazer referência a ele e especifica o endereço IP do dispositivo VPN local para o qual você criará uma conexão. Você também pode especificar os prefixos de endereço IP que serão roteados por meio do gateway de VPN para o dispositivo VPN. Os prefixos de endereço que você especifica são os prefixos localizados em sua rede local. Se sua rede local for alterada, você poderá atualizar facilmente os prefixos.
Use os seguintes valores:
- O --gateway-ip-address é o endereço IP do dispositivo VPN local.
- Os --local-address-prefixes são seus espaços de endereços locais.
Use o comando az network local-gateway create para adicionar um gateway de rede local com vários prefixos de endereço:
az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 --resource-group TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24
6. Solicitar um endereço IP público
Um gateway de VPN deve ter um endereço IP público. Você primeiro solicita o recurso de endereço IP e, em seguida, faz referência a ele ao criar seu gateway de rede virtual. O endereço IP é atribuído dinamicamente ao recurso quando o gateway de VPN é criado. A única vez em que o endereço IP Público é alterado é quando o gateway é excluído e recriado. Isso não altera o redimensionamento, a redefinição ou outras manutenções/atualizações internas do seu gateway de VPN. Observe que, se você quiser criar um Gateway de VPN usando o SKU de gateway básico, solicite um endereço IP público com os valores --allocation-method Dynamic --sku Basic
a seguir.
Use o comando az network public-ip create para solicitar um endereço IP público.
az network public-ip create --name VNet1GWIP --resource-group TestRG1 --allocation-method Static --sku Standard
7. Criar o gateway de VPN
Crie o gateway de VPN da rede virtual. Criar um gateway pode levar 45 minutos ou mais, dependendo do SKU de gateway selecionado.
Use os seguintes valores:
- O --gateway-type para uma configuração site a site é Vpn. O tipo de gateway é sempre específico para a configuração que você está implementando. Para obter mais informações, consulte Tipos de gateway.
- O --vpn-type é RouteBased (referenciado como Gateway Dinâmico em alguma documentação).
- Selecione a SKU de Gateway que você deseja usar. Há limitações de configuração para alguns SKUs. Para obter mais informações, confira SKUs de gateway.
Criar o gateway de VPN usando o comando az network vnet-gateway create. Se você executar esse comando usando o parâmetro '--no-wait', você não receberá nenhum feedback ou saída. Esse parâmetro permite que o gateway seja criado em segundo plano. Leva 45 minutos ou mais para criar um gateway.
az network vnet-gateway create --name VNet1GW --public-ip-address VNet1GWIP --resource-group TestRG1 --vnet VNet1 --gateway-type Vpn --vpn-type RouteBased --sku VpnGw1 --no-wait
8. Configurar o dispositivo VPN
As conexões site a site para uma rede local exigem um dispositivo VPN. Nesta etapa, você deve configurar seu dispositivo VPN. Ao configurar seu dispositivo VPN, você precisará dos seguintes itens:
Uma chave compartilhada. Essa é a mesma chave compartilhada especificada ao criar a conexão VPN site a site. Em nossos exemplos, usamos uma chave compartilhada básica. Recomendamos gerar uma chave mais complexa para uso.
O endereço IP público do seu gateway de rede virtual. Você pode exibir o endereço IP público usando o portal do Azure, o PowerShell ou a CLI. Para localizar o endereço IP público do seu gateway de rede virtual, use o comando az network public-ip list. Para facilitar a leitura, a saída é formatada para exibir a lista de IPs públicos em formato de tabela.
az network public-ip list --resource-group TestRG1 --output table
Dependendo do dispositivo VPN que você tem, talvez seja possível fazer o download de um script de configuração do dispositivo VPN. Para saber mais, confira Fazer download dos scripts de configuração de dispositivo de VPN.
Os links a seguir fornecem mais informações de configuração:
Para obter informações sobre dispositivos de VPN compatíveis, confira página Sobre dispositivos de VPN.
Antes de configurar seu dispositivo de VPN, verifique se há problemas conhecidos de compatibilidade de dispositivos.
Para obter links para as definições de configuração do dispositivo, confira Dispositivos VPN Validados. Fornecemos os links de configuração do dispositivo da melhor maneira possível, mas é sempre melhor verificar com o fabricante do dispositivo as informações de configuração mais recentes.
A lista mostra as versões que testamos. Se a versão do sistema operacional do seu dispositivo de VPN não estiver na lista, ele ainda poderá ser compatível. Verifique com o fabricante do seu dispositivo.
Para obter informações básicas sobre a configuração de dispositivos de VPN, confira a Visão geral das configurações de dispositivos de VPN de parceiros.
Para obter informações sobre a edição dos exemplos de configuração do dispositivo, consulte Edição de exemplos.
Para requisitos de criptografia, veja Sobre os requisitos de criptografia e gateways de VPN do Azure.
Para obter informações sobre os parâmetros necessários para concluir sua configuração, confira os Parâmetros IPsec/IKE padrão. As informações incluem versão do IKE, grupo DH (Diffie-Hellman), método de autenticação, algoritmos de criptografia e hash, vida útil da SA ( associação de segurança), PFS (sigilo de encaminhamento perfeito) e DPD (detecção de par morto).
Para obter as etapas de configuração da política IPsec/IKE, confira a página Configurar políticas de conexão IPsec/IKE personalizadas para VPN S2S e VNet-to-VNet.
Para conectar vários dispositivos de VPN baseados em políticas, veja Conectar um gateway da VPN a vários dispositivos de VPN locais baseados em políticas.
9. Criar a conexão VPN
Crie a conexão VPN site a site entre o gateway de rede virtual e o dispositivo VPN local. Preste atenção especial ao valor de chave compartilhada, que deve corresponder ao valor de chave compartilhada configurado para seu dispositivo VPN.
Crie a conexão usando o comando az network vpn-connection create.
az network vpn-connection create --name VNet1toSite2 --resource-group TestRG1 --vnet-gateway1 VNet1GW -l eastus --shared-key abc123 --local-gateway2 Site2
Após um instante, a conexão será estabelecida.
10. Verificar a conexão VPN
Você pode verificar se a conexão foi bem-sucedida usando o comando az network vpn-connection show. No exemplo, '--name' refere-se ao nome da conexão que deseja testar. Quando a conexão ainda está sendo estabelecida, seu status de conexão mostra "Conectando". Quando a conexão for estabelecida, o status será alterado para "Conectado". Modifique o exemplo a seguir com os valores do seu ambiente.
az network vpn-connection show --name <connection-name> --resource-group <resource-group-name>
Se quiser usar outro método para verificar a conexão, confira Verificar uma conexão de gateway de VPN.
Para conectar-se a uma máquina virtual
É possível se conectar a uma VM implantada em sua rede virtual criando uma conexão de Área de Trabalho Remota com a VM. É a melhor maneira de verificar inicialmente se você pode se conectar à sua VM usando seu endereço IP privado, em vez do nome do computador. Dessa forma, você está testando para ver se pode conectar-se e não se a resolução de nomes está configurada corretamente.
Localize o endereço IP privado. É possível encontrar o endereço IP privado de uma VM observando as propriedades da VM no portal do Azure ou usando o PowerShell.
Portal do Azure: localize sua VM no portal do Azure. Exiba as propriedades para a VM. O endereço IP privado está listado.
PowerShell: use o exemplo para exibir uma lista de VMs e endereços de IP privados dos seus grupos de recursos. Você não precisa modificar esse exemplo antes de usá-lo.
$VMs = Get-AzVM $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null foreach ($Nic in $Nics) { $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod Write-Output "$($VM.Name): $Prv,$Alloc" }
Verifique se você está conectado à sua rede virtual.
Abra a Conexão de Área de Trabalho Remota, inserindo RDP ou Conexão de Área de Trabalho Remota na caixa de pesquisa na barra de tarefas. Em seguida, selecione Conexão de Área de Trabalho Remota. Você também pode abrir a Conexão de Área de Trabalho Remota usando o comando
mstsc
no PowerShell.Na Conexão de Área de Trabalho Remota, insira o endereço IP privado da VM. É possível selecionar Mostrar Opções para ajustar outras configurações e depois se conectar.
Se você estiver com problemas para se conectar a uma VM por meio da conexão VPN, verifique o seguinte pontos:
- Verifique se a conexão VPN é estabelecida.
- Verifique se você está se conectando ao endereço IP privado da VM.
- Se você puder se conectar à VM usando o endereço IP privado, mas não o nome do computador, verifique se o DNS foi configurado corretamente. Para obter mais informações sobre como funciona a resolução de nomes para VMs, confira Resolução de nomes para VMs.
Para obter mais informações sobre conexões RDP, confira Solucionar problemas de conexões da Área de Trabalho Remota a uma VM.
Tarefas comuns
Esta seção contém os comandos comuns que são úteis ao trabalhar com configurações de site a site. Para obter a lista completa dos comandos de rede da CLI, consulte CLI do Azure - Rede.
Para exibir os gateways de rede local
Para exibir uma lista de gateways de rede local, use o comando az network local-gateway list.
az network local-gateway list --resource-group TestRG1
Para modificar prefixos de endereço IP de gateway de rede local - sem conexão de gateway
Se você não tiver uma conexão de gateway e deseja adicionar ou remover os prefixos de endereço IP, você use o mesmo comando que você usa para criar o gateway de rede local, az network local-gateway create. Você também pode usar esse comando para atualizar o endereço IP do gateway para o dispositivo VPN. Para sobrescrever as configurações atuais, use o nome existente do seu gateway de rede local. Se você usar um nome diferente, um novo gateway de rede local será criado, em vez de substituir o existente.
Sempre que você fizer uma alteração, toda a lista de prefixos deverá ser especificada, não apenas os prefixos que você deseja alterar. Especifique apenas os prefixos que você deseja manter. Neste caso, 10.0.0.0/24 e 20.0.0.0/24
az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 -g TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24
Para modificar prefixos de endereço IP de gateway de rede local - conexão de gateway existente
Se você tiver uma conexão de gateway e deseja adicionar ou remover os prefixos de endereço IP, você pode atualizar os prefixos usando az network local-gateway update. Isso resulta em algum tempo de inatividade para a conexão VPN. Ao modificar os prefixos de endereço IP, você não precisa excluir o gateway de VPN.
Sempre que você fizer uma alteração, toda a lista de prefixos deverá ser especificada, não apenas os prefixos que você deseja alterar. Neste exemplo, 10.0.0.0/24 e 20.0.0.0/24 já estão presentes. Podemos adicionar os prefixos 30.0.0.0/24 e 40.0.0.0/24 e especificar todos os 4 prefixos durante a atualização.
az network local-gateway update --local-address-prefixes 10.0.0.0/24 20.0.0.0/24 30.0.0.0/24 40.0.0.0/24 --name VNet1toSite2 -g TestRG1
Para modificar o 'gatewayIpAddress' para um gateway de rede local
Se o dispositivo VPN ao qual você deseja se conectar mudou seu endereço IP público, você precisará modificar o gateway de rede local para refletir essa alteração. O endereço IP do gateway pode ser alterado sem remover uma conexão de gateway de VPN existente (se houver uma). Para modificar o endereço IP do gateway, substitua os valores 'Site2' e 'TestRG1' pelos seus próprios valores usando o comando az network local-gateway update.
az network local-gateway update --gateway-ip-address 23.99.222.170 --name Site2 --resource-group TestRG1
Verifique se o endereço IP está correto na saída:
"gatewayIpAddress": "23.99.222.170",
Para verificar os valores de chave compartilhados
Verifique se o valor de chave compartilhado é o mesmo valor usado para a configuração do dispositivo VPN. Caso contrário, execute a conexão novamente usando o valor do dispositivo ou atualize o dispositivo com o valor de retorno. Os valores devem ser correspondentes. Para exibir a chave compartilhada, use az network vpn-connection-list.
az network vpn-connection shared-key show --connection-name VNet1toSite2 --resource-group TestRG1
Para exibir o endereço IP público do gateway de VPN
Para localizar o endereço IP público do seu gateway de rede virtual, use o comando az network public-ip list. Para facilitar a leitura, a saída para este exemplo é formatada para exibir a lista de IPs públicos em formato de tabela.
az network public-ip list --resource-group TestRG1 --output table
Próximas etapas
- Quando sua conexão for concluída, você poderá adicionar máquinas virtuais às suas redes virtuais. Para saber mais, veja Máquinas virtuais.
- Para obter informações sobre o BGP, consulte a Visão Geral do BGP e Como configurar o BGP.
- Para saber mais sobre Túneis Forçados, confira Sobre o Túnel Forçado.
- Para obter informações sobre Conexões Altamente Disponíveis Ativo-Ativo, consulte Conectividade Altamente Disponível entre locais e Rede Virtual para Rede Virtual.
- Para obter uma lista de comandos da CLI do Azure de rede, confira CLI do Azure.
- Para saber mais sobre como criar uma conexão VPN site a site usando o modelo do Azure Resource Manager, confira Criar uma conexão VPN site a site.
- Para saber mais sobre como criar uma conexão VPN de rede virtual para rede virtual usando o modelo do Azure Resource Manager, veja Implantar a replicação geográfica do HBase.