Criar um gateway VPN usando o PowerShell

Este artigo ajuda você a criar um gateway de VPN do Azure usando o PowerShell. Um gateway VPN é usado ao criar uma conexão VPN com sua rede local. Você também pode usar um gateway VPN para conectar redes virtuais. Para obter informações mais abrangentes sobre algumas das configurações neste artigo, consulte Criar um gateway VPN - portal.

Diagrama que mostra uma rede virtual e um gateway VPN.

Um gateway VPN é uma parte de uma arquitetura de conexão para ajudá-lo a acessar recursos com segurança em uma rede virtual.

  • O lado esquerdo do diagrama mostra a rede virtual e o gateway VPN que você cria usando as etapas neste artigo.
  • Mais tarde, você pode adicionar diferentes tipos de conexões, conforme mostrado no lado direito do diagrama. Por exemplo, você pode criar conexões site a site e ponto a site . Para exibir diferentes arquiteturas de design que você pode criar, consulte Design de gateway VPN.

As etapas neste artigo criam uma rede virtual, uma sub-rede, uma sub-rede de gateway e um gateway VPN ativo-ativo (gateway de rede virtual) baseado em rota, com redundância de zona, usando a SKU VpnGw2AZ de Geração 2. Se você quiser criar um gateway VPN usando a SKU Básica , consulte Criar um gateway VPN SKU Básico. Quando a criação do gateway for concluída, você poderá criar conexões.

Os gateways ativos-ativos diferem dos gateways de espera ativa das seguintes maneiras:

  • Os gateways ativos-ativos têm duas configurações de IP de gateway e dois endereços IP públicos.
  • Os gateways ativos-ativos têm a configuração ativo-ativo habilitada.
  • O gateway de rede virtual SKU não pode ser Basic ou Standard.

Para obter mais informações sobre gateways ativos-ativos, consulte Conectividade altamente disponível entre locais e VNet-to-VNet. Para obter mais informações sobre zonas de disponibilidade e gateways redundantes de zona, consulte O que são zonas de disponibilidade?

Antes de começar

Estas etapas exigem uma assinatura do Azure. Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.

Trabalhando com o Azure PowerShell

Este artigo usa cmdlets do PowerShell. Para executar os cmdlets, você pode usar o Azure Cloud Shell. O Cloud Shell é um shell interativo gratuito que você pode usar para executar as etapas neste artigo. Tem as ferramentas comuns do Azure pré-instaladas e configuradas para utilização com a sua conta.

Para abrir o Cloud Shell, basta selecionar Abrir Cloudshell no canto superior direito de um bloco de código. Você também pode abrir o Cloud Shell em uma guia separada do https://shell.azure.com/powershellnavegador acessando . Selecione Copiar para copiar os blocos de código, cole-os no Cloud Shell e selecione a tecla Enter para executá-los.

Você também pode instalar e executar os cmdlets do Azure PowerShell localmente em seu computador. Os cmdlets do PowerShell são atualizados com frequência. Se você não tiver instalado a versão mais recente, os valores especificados nas instruções podem falhar. Para localizar as versões do Azure PowerShell instaladas no seu computador, use o Get-Module -ListAvailable Az cmdlet. Para instalar ou atualizar, consulte Instalar o módulo do Azure PowerShell.

Criar um grupo de recursos

Crie um grupo de recursos do Azure com New-AzResourceGroup. Um grupo de recursos é um contentor lógico no qual os recursos do Azure são implementados e geridos. Se você estiver executando o PowerShell localmente, abra seu console do PowerShell com privilégios elevados e conecte-se ao Azure usando o Connect-AzAccount comando.

New-AzResourceGroup -Name TestRG1 -Location EastUS

Criar uma rede virtual

Crie uma rede virtual com New-AzVirtualNetwork. O exemplo a seguir cria uma rede virtual chamada VNet1 no local EastUS:

$virtualnetwork = New-AzVirtualNetwork `
  -ResourceGroupName TestRG1 `
  -Location EastUS `
  -Name VNet1 `
  -AddressPrefix 10.1.0.0/16

Crie uma configuração de sub-rede usando o cmdlet New-AzVirtualNetworkSubnetConfig .

$subnetConfig = Add-AzVirtualNetworkSubnetConfig `
  -Name Frontend `
  -AddressPrefix 10.1.0.0/24 `
  -VirtualNetwork $virtualnetwork

Defina a configuração de sub-rede para a rede virtual usando o cmdlet Set-AzVirtualNetwork .

$virtualnetwork | Set-AzVirtualNetwork

Adicionar uma sub-rede do gateway

A sub-rede do gateway contém os endereços IP reservados que os serviços de gateway de rede virtual usam. Use os exemplos a seguir para adicionar uma sub-rede de gateway:

Defina uma variável para sua rede virtual.

$vnet = Get-AzVirtualNetwork -ResourceGroupName TestRG1 -Name VNet1

Crie a sub-rede do gateway usando o cmdlet Add-AzVirtualNetworkSubnetConfig .

Add-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -AddressPrefix 10.1.255.0/27 -VirtualNetwork $vnet

Defina a configuração de sub-rede para a rede virtual usando o cmdlet Set-AzVirtualNetwork .

$vnet | Set-AzVirtualNetwork

Solicitar um endereço IP público

Cada gateway VPN deve ter um endereço IP público alocado. Quando você cria uma conexão com um gateway VPN, esse é o endereço IP que você especifica. Neste exercício, criamos um ambiente de gateway VPN redundante de zona ativa-ativa. Isso significa que dois endereços IP públicos padrão são necessários, um para cada gateway, e também devemos especificar a configuração de zona. Este exemplo especifica uma configuração com redundância de zona porque especifica todas as 3 zonas regionais.

Use os exemplos a seguir para solicitar um endereço IP público para cada gateway. O método de atribuição deve ser estático.

$gw1pip1 = New-AzPublicIpAddress -Name "VNet1GWpip1" -ResourceGroupName "TestRG1" -Location "EastUS" -AllocationMethod Static -Sku Standard -Zone 1,2,3
$gw1pip2 = New-AzPublicIpAddress -Name "VNet1GWpip2" -ResourceGroupName "TestRG1" -Location "EastUS" -AllocationMethod Static -Sku Standard -Zone 1,2,3

Criar a configuração do endereço IP do gateway

A configuração do gateway define a sub-rede e o endereço IP público a utilizar. Use o exemplo a seguir para criar sua configuração de gateway.

$vnet = Get-AzVirtualNetwork -Name VNet1 -ResourceGroupName TestRG1
$subnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet

$gwipconfig1 = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 -SubnetId $subnet.Id -PublicIpAddressId $gw1pip1.Id
$gwipconfig2 = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig2 -SubnetId $subnet.Id -PublicIpAddressId $gw1pip2.Id

Criar o gateway de VPN

Criar um gateway, muitas vezes, pode demorar 45 minutos ou mais, dependendo do SKU de gateway selecionado. Depois que o gateway for criado, você poderá criar uma conexão entre sua rede virtual e outra rede virtual. Ou crie uma conexão entre sua rede virtual e um local local.

Crie um gateway VPN usando o cmdlet New-AzVirtualNetworkGateway . Observe nos exemplos que ambos os endereços IP públicos são referenciados e o gateway está configurado como ativo-ativo. No exemplo, adicionamos o interruptor opcional -Debug .

New-AzVirtualNetworkGateway -Name VNet1GW -ResourceGroupName TestRG1 `
-Location "East US" -IpConfigurations $gwipconfig1,$gwipconfig2 -GatewayType "Vpn" -VpnType RouteBased `
-GatewaySku VpnGw2AZ -VpnGatewayGeneration Generation2 -EnableActiveActiveFeature -Debug

Exibir o gateway VPN

Você pode exibir o gateway VPN usando o cmdlet Get-AzVirtualNetworkGateway .

Get-AzVirtualNetworkGateway -Name Vnet1GW -ResourceGroup TestRG1

Ver os endereços IP públicos

Para exibir o endereço IP público do gateway de VPN, use o cmdlet Get-AzPublicIpAddress . Exemplo:

Get-AzPublicIpAddress -Name VNet1GWpip1 -ResourceGroupName TestRG1

Clean up resources (Limpar recursos)

Quando não precisar mais dos recursos criados, use o comando Remove-AzResourceGroup para excluir o grupo de recursos. Isso exclui o grupo de recursos e todos os recursos que ele contém.

Remove-AzResourceGroup -Name TestRG1

Próximos passos

Quando o gateway terminar de criar, você poderá criar uma conexão entre sua rede virtual e outra rede virtual. Ou crie uma conexão entre sua rede virtual e um local local.