Compartilhar via


Criar um gateway de VPN usando o PowerShell

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

Diagrama que mostra uma rede virtual e um gateway VPN.

  • O lado esquerdo do diagrama mostra a rede virtual e o gateway de VPN que você cria ao usar as etapas neste artigo.
  • Posteriormente, 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 compilar, confira Design de gateway de VPN.

As etapas deste artigo criam uma rede virtual, uma sub-rede, uma sub-rede do gateway e um gateway de VPN (gateway de rede virtual) baseado em rota no modo ativo/ativo com redundância de zona usando o SKU VpnGw2AZ de 2ª geração. Depois que o gateway for criado, você poderá configurar as conexões.

  • Se você quiser criar um gateway de VPN usando o SKU Básico, confira Criar um gateway de VPN de SKU Básico.
  • Recomendamos que você crie um gateway de VPN no modo ativo/ativo quando possível. Os gateways de VPN no modo ativo/ativo oferecem melhor disponibilidade e desempenho do que os gateways de VPN no modo padrão. Para obter mais informações sobre os gateways ativo/ativo, confira Sobre os gateways no modo ativo/ativo.
  • Para obter informações sobre zonas de disponibilidade e gateways com redundância de zona, confira O que são as zonas de disponibilidade?

Observação

As etapas desse artigo usam o gateway SKU VpnGw2AZ, que é um SKU que dá suporte a zonas de disponibilidade do Azure. Se as zonas de disponibilidade não forem suportadas em sua região, use um SKU que não seja AZ. Para obter mais informações sobre SKUs, veja Sobre SKUs de gateway.

Antes de começar

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

Este artigo usa cmdlets do PowerShell. Para executar os cmdlets, você pode usar o Azure Cloud Shell. O Cloud Shell é um shell interativo e grátis que pode ser usado para executar as etapas deste artigo. Ele tem ferramentas do Azure instaladas e configuradas para usar com sua conta.

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

Também é possível instalar e executar 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 poderão falhar. Use o cmdlet Get-Module -ListAvailable Az para localizar versões do Azure PowerShell instaladas em seu computador. Para executar uma instalação ou atualização, confira como Instalar o módulo do Azure PowerShell.

Criar um grupo de recursos

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

New-AzResourceGroup -Name TestRG1 -Location EastUS

Criar uma rede virtual

Se você ainda não tiver uma rede virtual, crie uma com New-AzVirtualNetwork. Ao criar uma rede virtual, garanta que os espaços de endereço que você especificar não se sobreponham a nenhum espaço de endereço que você tenha na rede local. Se existir um intervalo de endereços duplicado em ambos os lados da conexão VPN, o tráfego não será roteado da maneira esperada. Além disso, se você quiser conectar essa rede virtual a outra rede virtual, o espaço de endereço não poderá se sobrepor à outra rede virtual. Tome cuidado e planeje sua configuração de rede de forma adequada.

O exemplo a seguir cria uma rede virtual padrão 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. A sub-rede FrontEnd não é usada neste exercício. Você pode substituí-la pelo nome da sua sub-rede.

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

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

$virtualnetwork | Set-AzVirtualNetwork

Adicionar uma sub-rede de gateway

Os recursos do gateway de rede virtual são implantados em uma sub-rede específica chamada GatewaySubnet. O gateway faz parte do intervalo de endereços IP de rede virtual que você especifica ao configurar sua rede virtual.

Se você não tiver uma sub-rede chamada GatewaySubnet, ao criar seu gateway de VPN, ele falhará. Recomendamos que você crie uma sub-rede de gateway que use um /27 (ou maior). Por exemplo, /27 ou /26. Para obter mais informações, confira Configurações do Gateway de VPN - Sub-rede do Gateway.

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?

Defina uma variável para sua rede virtual.

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

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

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

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

$vnet | Set-AzVirtualNetwork

Solicitar endereços IP públicos

Um gateway de VPN deve ter um endereço IP público. Quando você cria uma conexão a um gateway VPN, esse é o endereço IP que você especificar. No caso dos gateways no modo ativo/ativo, cada instância do gateway tem um recurso de endereço IP público próprio. Você primeiro solicita o recurso de endereço IP e, em seguida, faz referência a ele ao criar seu gateway de rede virtual. Além disso, para qualquer SKU de gateway que termine com AZ, também é preciso especificar a configuração de zona. Este exemplo especifica uma configuração com redundância de zona porque especifica todas as três zonas regionais.

O endereço IP é atribuído 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.

Use os exemplos a seguir para solicitar um endereço IP público estático para cada instância de gateway.

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

Para criar um gateway ativo-ativo (recomendado), solicite um segundo endereço IP público:

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

Crie a configuração de endereçamento IP do gateway

A configuração do gateway define a sub-rede e o endereço IP público a serem usados. Use o exemplo a seguir para criar a configuração do 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 pode levar 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 o local. Outra opção é criar uma conexão entre sua rede virtual e outra rede virtual.

Crie um gateway de VPN usando o cmdlet New-AzVirtualNetworkGateway. Observe nos exemplos que os dois IPs são referenciados e que o gateway está configurado como ativo-ativo usando o comutador EnableActiveActiveFeature. No exemplo, adicionamos o comutador -Debug opcional. Se quiser criar um gateway usando outro SKU, confira Sobre SKUs de gateway para determinar o SKU que melhor atende aos seus requisitos de configuração.

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

Veja o Gateway de VPN

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

Get-AzVirtualNetworkGateway -Name Vnet1GW -ResourceGroup TestRG1

Confira Endereços IP do gateway

Cada instância do gateway de VPN recebe um recurso de endereço IP público. Para exibir o endereço IP associado ao recurso, use o cmdlet Get-AzPublicIpAddress. Repita para cada instância de gateway. Os gateways ativos-ativos têm um endereço IP público diferente atribuído a cada instância.

Get-AzPublicIpAddress -Name VNet1GWpip1 -ResourceGroupName TestRG1

Limpar os recursos

Quando os recursos criados não forem mais necessários, 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óximas etapas

Depois que o gateway for criado, você poderá configurar as conexões.