Partilhar via


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.

  • 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 de modo ativo-ativo (gateway de rede virtual) baseado em rota, com redundância de zona, usando o SKU VpnGw2AZ de Geração 2. Depois que o gateway é criado, você pode configurar conexões.

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

Nota

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

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.

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 usando o comando 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

Se você ainda não tiver uma rede virtual, crie uma com New-AzVirtualNetwork. Ao criar uma rede virtual, certifique-se de que os espaços de endereço especificados não se sobreponham a nenhum dos espaços de endereço que você tem 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á encaminhado 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 pode se sobrepor a outra rede virtual. Tenha o cuidado de planear a configuração da rede em conformidade.

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 . A sub-rede FrontEnd não é usada neste exercício. Você pode substituir seu próprio nome de sub-rede.

$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

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

Se você não tiver uma sub-rede chamada GatewaySubnet, quando você criar seu gateway 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, consulte Configurações do gateway VPN - Sub-rede do gateway.

Importante

Não há suporte para NSGs (grupos de segurança de rede) na sub-rede do gateway. Associar um grupo de segurança de rede a essa sub-rede pode fazer com que seu gateway de rede virtual (gateways VPN e ExpressRoute) pare de funcionar conforme o esperado. Para obter mais informações sobre os grupos de segurança de rede, veja O que é um grupo de segurança de rede (NSG)?

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 endereços IP públicos

Um gateway VPN deve ter um endereço IP público. Quando você cria uma conexão com um gateway VPN, esse é o endereço IP que você especifica. Para gateways de modo ativo-ativo, cada instância de gateway tem seu próprio recurso de endereço IP público. Primeira, requeira o recurso de endereço IP e, em seguida, faça referência ao mesmo ao criar o gateway de rede virtual. Além disso, para qualquer SKU de gateway que termine em AZ, você também deve especificar a configuração Zone. 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 VPN é criado. A única vez que o endereço IP público é alterado é quando o gateway é excluído e recriado. Não é alterado ao redimensionar, repor ou ao realizar qualquer outra manutenção/atualização interna do 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

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 conexão entre sua rede virtual e seu local local. Ou crie uma conexão entre sua rede virtual e outra rede virtual.

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 é configurado como ativo-ativo usando o EnableActiveActiveFeature switch. No exemplo, adicionamos o interruptor opcional -Debug . Se você quiser criar um gateway usando uma SKU diferente, consulte Sobre SKUs de gateway para determinar a SKU que melhor se adapta 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

Exibir o gateway VPN

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

Get-AzVirtualNetworkGateway -Name Vnet1GW -ResourceGroup TestRG1

Exibir endereços IP do gateway

A cada instância de gateway VPN é atribuído 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

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

Depois que o gateway é criado, você pode configurar conexões.