Creare un gateway VPN tramite PowerShell

Questo articolo illustra come creare un gateway VPN di Azure con PowerShell. Il gateway VPN viene usato quando si crea una connessione VPN alla rete locale. È anche possibile usare il gateway VPN per connettere reti virtuali. Per informazioni più complete su alcune delle impostazioni illustrate in questo articolo, vedere Creare un gateway VPN-portale.

Diagramma che mostra una rete virtuale e un gateway VPN.

Il gateway VPN è un componente dell'architettura di connessione che consente di accedere in modo sicuro alle risorse all'interno di una rete virtuale.

  • Sul lato sinistro del diagramma vengono mostrati la rete virtuale e il gateway VPN creati seguendo i passaggi descritti in questo articolo.
  • In seguito, è possibile aggiungere diversi tipi di connessioni, come viene mostrato nella parte destra del diagramma. Ad esempio, è possibile creare connessioni da sito a sito e da punto a sito. Per visualizzare le diverse architetture di progettazione che è possibile creare, vedere Progettazione di gateway VPN.

I passaggi descritti in questo articolo creano una rete virtuale, una subnet, una subnet del gateway e un gateway VPN attivo/attivo con ridondanza della zona e basato su route (gateway di rete virtuale) usando lo SKU VpnGw2AZ di seconda generazione. Se invece si vuole creare un gateway VPN usando lo SKU Basic, vedere Creare un gateway VPN con SKU Basic. Dopo aver creato il gateway, è possibile configurare le connessioni.

I gateway attivo/attivo differiscono dai gateway attivo-standby nei modi seguenti:

  • I gateway attivi hanno due configurazioni IP gateway e due indirizzi IP pubblici.
  • Per i gateway attivi è abilitata l'impostazione attiva-attiva.
  • Lo SKU del gateway di rete virtuale non può essere Basic o Standard.

Per altre informazioni sui gateway attivo/attivo, vedere Connettività cross-premise e da rete virtuale a rete virtuale a disponibilità elevata. Per altre informazioni sulle zone di disponibilità e i gateway con ridondanza della zona, vedere Che cosa sono le zone di disponibilità?

Operazioni preliminari

Questi passaggi richiedono una sottoscrizione di Azure. Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.

Uso di Azure PowerShell

Questo articolo usa i cmdlet di PowerShell. Per eseguire i cmdlet, è possibile usare Azure Cloud Shell. Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.

Per aprire Cloud Shell, basta selezionare Apri Cloud Shell nell'angolo superiore destro di un blocco di codice. È anche possibile aprire Cloud Shell in una scheda separata del browser andando su https://shell.azure.com/powershell. Selezionare Copia per copiare i blocchi di codice e incollarli in Cloud Shell, poi premere INVIO per eseguirli.

È anche possibile installare ed eseguire i cmdlet di Azure PowerShell in locale nel computer. I cmdlet di PowerShell vengono aggiornati di frequente. Se non è stata installata la versione più recente, i valori specificati nelle istruzioni potrebbero non avere successo. Per trovare le versioni di Azure PowerShell installate nel computer, usare il cmdlet Get-Module -ListAvailable Az. Per installare o aggiornare, vedere Installare il modulo Azure PowerShell.

Creare un gruppo di risorse

Creare un gruppo di risorse di Azure con New-AzResourceGroup. Un gruppo di risorse è un contenitore logico in cui vengono distribuite e gestite le risorse di Azure. Se si esegue PowerShell in locale, aprire la console di PowerShell con privilegi elevati e connettersi a Azure per mezzo del comando Connect-AzAccount.

New-AzResourceGroup -Name TestRG1 -Location EastUS

Creare una rete virtuale

Creare una rete virtuale con New-AzVirtualNetwork. L'esempio seguente crea una rete virtuale denominata VNet1 nella posizione EastUS:

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

Creare una configurazione della subnet usando il cmdlet New-AzVirtualNetworkSubnetConfig.

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

Impostare la configurazione della subnet per la rete virtuale usando il cmdlet Set-AzVirtualNetwork.

$virtualnetwork | Set-AzVirtualNetwork

Aggiungere una subnet del gateway

La subnet del gateway contiene gli indirizzi IP riservati usati dai servizi del gateway di rete virtuale. Per aggiungere una subnet del gateway, usare gli esempi seguenti:

Impostare una variabile per la rete virtuale.

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

Creare la subnet del gateway usando il cmdlet Add-AzVirtualNetworkSubnetConfig.

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

Impostare la configurazione della subnet per la rete virtuale usando il cmdlet Set-AzVirtualNetwork.

$vnet | Set-AzVirtualNetwork

Richiedere un indirizzo IP pubblico

Ogni gateway VPN deve avere un indirizzo IP pubblico allocato. Si tratta dell'indirizzo IP specificato durante la creazione di una connessione in un gateway VPN. In questo esercizio, viene creato un ambiente gateway VPN attivo/attivo con ridondanza della zona. Ciò significa che sono necessari due indirizzi IP pubblici Standard, uno per ogni gateway ed è necessario specificare anche l'impostazione della zona. In questo esempio viene specificata una configurazione con ridondanza della zona perché specifica tutte le 3 zone regionali.

Usare gli esempi seguenti per richiedere un indirizzo IP pubblico per ogni gateway. Il metodo di allocazione deve essere Statico.

$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

Creare la configurazione dell'indirizzo IP del gateway

La configurazione del gateway definisce la subnet e l'indirizzo IP pubblico da utilizzare. Per creare la configurazione del gateway, usare l'esempio seguente.

$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

Creare il gateway VPN

La creazione di un gateway spesso richiede anche più di 45 minuti di tempo a seconda dello SKU gateway selezionato. Dopo aver creato il gateway, è possibile creare una connessione tra la rete virtuale e un'altra rete virtuale. oppure tra la propria rete virtuale e una posizione locale.

Creare un gateway VPN usando il cmdlet New-AzVirtualNetworkGateway. Si noti che negli esempi viene fatto riferimento a entrambi gli indirizzi IP pubblici e che il gateway è configurato come attivo/attivo. Nell'esempio viene aggiunta l'opzione -Debug facoltativa.

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

Visualizzare il gateway VPN

È possibile visualizzare il gateway VPN usando il cmdlet Get-AzVirtualNetworkGateway.

Get-AzVirtualNetworkGateway -Name Vnet1GW -ResourceGroup TestRG1

Visualizzare gli indirizzi IP pubblici

Per visualizzare l'indirizzo IP pubblico del gateway VPN, usare il cmdlet Get-AzPublicIpAddress. Esempio:

Get-AzPublicIpAddress -Name VNet1GWpip1 -ResourceGroupName TestRG1

Pulire le risorse

Quando le risorse create non sono più necessarie, usare il comando Remove-AzResourceGroup per eliminare il gruppo di risorse. Il comando elimina il gruppo di risorse e tutte le risorse in esso contenute.

Remove-AzResourceGroup -Name TestRG1

Passaggi successivi

Dopo aver creato il gateway, è possibile creare una connessione tra la propria rete virtuale e un'altra rete virtuale. oppure tra la propria rete virtuale e una posizione locale.