Configurare i criteri IPsec/IKE per le connessioni VPN da sito a sito
Questo articolo descrive i passaggi per configurare un criterio IPsec/IKE per le connessioni VPN da sito a sito (S2S) nell'hub di Azure Stack.
Parametri dei criteri IPsec e IKE per i gateway VPN
Lo standard del protocollo IPsec e IKE supporta un'ampia gamma di algoritmi di crittografia in varie combinazioni. Per vedere quali parametri sono supportati nell'hub di Azure Stack in modo da poter soddisfare i requisiti di conformità o di sicurezza, vedere parametri IPsec/IKE.
Questo articolo fornisce istruzioni su come creare e configurare un criterio IPsec/IKE e applicarlo a una connessione nuova o esistente.
Considerazioni
Quando si usano questi criteri, tenere presenti le considerazioni importanti seguenti:
- I criteri IPsec/IKE funzionano solo sugli SKU del gateway Standard e Alta Prestazione (basato su route).
- È possibile specificare una sola combinazione di criteri per una determinata connessione.
- È necessario specificare tutti gli algoritmi e i parametri sia per IKE (modalità principale) che per IPsec (modalità rapida). La specifica parziale dei criteri non è consentita.
- Consultare le specifiche del fornitore di dispositivi VPN per assicurarsi che i criteri siano supportati nei dispositivi VPN locali. Non è possibile stabilire connessioni da sito a sito se i criteri non sono compatibili.
Prerequisiti
Prima di iniziare, assicurarsi di disporre dei prerequisiti seguenti:
- Una sottoscrizione di Azure. Se non si ha già una sottoscrizione di Azure, è possibile iscriversi per ottenere un account gratuito .
- Cmdlet di PowerShell per Azure Resource Manager. Per altre informazioni sull'installazione dei cmdlet di PowerShell, vedere Installare PowerShell per l'hub di Azure Stack.
Parte 1: Creare e impostare politiche IPsec/IKE
Questa sezione descrive i passaggi necessari per creare e aggiornare i criteri IPsec/IKE in una connessione VPN da sito a sito:
- Creare una rete virtuale e un gateway VPN.
- Creare un gateway di rete locale per la connessione cross-premise.
- Creare un criterio IPsec/IKE con algoritmi e parametri selezionati.
- Creare una connessione IPSec con i criteri IPsec/IKE.
- Aggiungere/aggiornare/rimuovere un criterio IPsec/IKE per una connessione esistente.
Le istruzioni contenute in questo articolo consentono di configurare e configurare i criteri IPsec/IKE, come illustrato nella figura seguente:
Parte 2 - Algoritmi di crittografia e punti di forza delle chiavi supportati
La tabella seguente elenca gli algoritmi di crittografia supportati e i punti di forza delle chiavi configurabili dall'hub di Azure Stack:
IPsec/IKEv2 | Opzioni |
---|---|
Crittografia IKEv2 | AES256, AES192, AES128, DES3, DES |
Integrità IKEv2 | SHA384, SHA256, SHA1, MD5 |
Gruppo DH | ECP384, DHGroup14, DHGroup2, DHGroup1, ECP256, DHGroup24 |
Crittografia IPsec | GCMAES256, GCMAES192, GCMAES128, AES256, AES192, AES128, DES3, DES, Nessuno |
Integrità IPsec | GCMAES256, GCMAES192, GCMAES128, SHA256 |
Gruppo PFS | PFS24, ECP384, ECP256, PFS2048, PFS2, PFS1, PFSMM, Nessuno |
Durata a vita di QM SA | (Facoltativo: i valori predefiniti vengono usati se non specificati) Secondi (numero intero; min. 300/predefinito 27000 secondi) KByte (intero; min. 1024/ predefinito 102400000 KByte) |
Selettore del traffico | I selettori di traffico basati su criteri non sono supportati nell'hub di Azure Stack. |
Nota
L'impostazione di una durata troppo breve per QM SA richiede un rinnovo delle chiavi non necessario, che può compromettere le prestazioni.
La configurazione del dispositivo VPN locale deve corrispondere o contenere gli algoritmi e i parametri seguenti specificati nei criteri IPsec/IKE di Azure:
- Algoritmo di crittografia IKE (modalità principale/fase 1).
- Algoritmo di integrità IKE (modalità principale/fase 1).
- Gruppo DH (modalità principale/fase 1).
- Algoritmo di crittografia IPsec (modalità rapida/fase 2).
- Algoritmo di integrità IPsec (modalità rapida/fase 2).
- Gruppo PFS (modalità rapida/fase 2).
- Le durate dell'amministratore di sistema sono solo specifiche locali e non devono corrispondere.
Se GCMAES viene usato come algoritmo di crittografia IPsec, è necessario selezionare lo stesso algoritmo GCMAES e la lunghezza della chiave per l'integrità IPsec; ad esempio, usando GCMAES128 per entrambi.
Nella tabella precedente:
- IKEv2 corrisponde alla modalità principale o alla fase 1.
- IPsec corrisponde alla modalità rapida o alla fase 2.
- Il gruppo DH specifica il gruppo di Diffie-Hellmen utilizzato nella modalità principale o nella fase 1.
- Il gruppo PFS specifica il gruppo di Diffie-Hellmen usato in modalità rapida o fase 2.
La durata dell'associazione di sicurezza in modalità principale IKEv2 è fissa a 28.800 secondi sui gateway VPN di Azure Stack Hub.
Nella tabella seguente sono elencati i gruppi di Diffie-Hellman corrispondenti supportati dai criteri personalizzati:
Gruppo Diffie-Hellman | DHGroup | PFSGroup | Lunghezza chiave |
---|---|---|---|
1 | DHGroup1 | PFS1 | MODP a 768 bit |
2 | DHGroup2 | PFS2 | 1024-bit MODP |
14 | DHGroup14 DHGroup2048 |
PFS2048 | Il MODP a 2048 bit |
19 | ECP256 | ECP256 | ECP a 256 bit |
20 | ECP384 | ECP384 | ECP 384 bit |
24 | DHGroup24 | PFS24 | MODP a 2048 bit |
Per altre informazioni, vedere RFC3526 e RFC5114.
Parte 3: Creare una nuova connessione VPN da sito a sito con i criteri IPsec/IKE
Questa sezione illustra i passaggi per creare una connessione VPN da sito a sito con un criterio IPsec/IKE. La procedura seguente consente di creare la connessione, come illustrato nella figura seguente:
Per istruzioni dettagliate sulla creazione di una connessione VPN da sito a sito, vedere Creare una connessione VPN da sito a sito.
Passaggio 1: Creare la rete virtuale, il gateway VPN e il gateway di rete locale
Dichiarare le variabili
Per questo esercizio, iniziare dichiarando le variabili seguenti. Assicurarsi di sostituire i segnaposto con i propri valori durante la configurazione per la produzione:
$Sub1 = "<YourSubscriptionName>"
$RG1 = "TestPolicyRG1"
$Location1 = "East US 2"
$VNetName1 = "TestVNet1"
$FESubName1 = "FrontEnd"
$BESubName1 = "Backend"
$GWSubName1 = "GatewaySubnet"
$VNetPrefix11 = "10.11.0.0/16"
$VNetPrefix12 = "10.12.0.0/16"
$FESubPrefix1 = "10.11.0.0/24"
$BESubPrefix1 = "10.12.0.0/24"
$GWSubPrefix1 = "10.12.255.0/27"
$DNS1 = "8.8.8.8"
$GWName1 = "VNet1GW"
$GW1IPName1 = "VNet1GWIP1"
$GW1IPconf1 = "gw1ipconf1"
$Connection16 = "VNet1toSite6"
$LNGName6 = "Site6"
$LNGPrefix61 = "10.61.0.0/16"
$LNGPrefix62 = "10.62.0.0/16"
$LNGIP6 = "131.107.72.22"
Connettersi alla sottoscrizione e creare un nuovo gruppo di risorse
Assicurarsi di passare alla modalità PowerShell per usare i cmdlet di Resource Manager. Per altre informazioni, vedere Connettersi all'hub di Azure Stack con PowerShell come utente.
Aprire la console di PowerShell e connettersi al proprio account; Per esempio:
Connect-AzAccount
Select-AzSubscription -SubscriptionName $Sub1
New-AzResourceGroup -Name $RG1 -Location $Location1
Creare la rete virtuale, il gateway VPN e il gateway di rete locale
L'esempio seguente crea la rete virtuale, TestVNet1, insieme a tre subnet e al gateway VPN. Quando si sostituiscono valori, è importante assegnare un nome specifico alla subnet del gateway GatewaySubnet. Se lo chiami in un altro modo, la creazione del gateway fallisce.
$fesub1 = New-AzVirtualNetworkSubnetConfig -Name $FESubName1 -AddressPrefix $FESubPrefix1
$besub1 = New-AzVirtualNetworkSubnetConfig -Name $BESubName1 -AddressPrefix $BESubPrefix1
$gwsub1 = New-AzVirtualNetworkSubnetConfig -Name $GWSubName1 -AddressPrefix $GWSubPrefix1
New-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1 -Location $Location1 -AddressPrefix $VNetPrefix11,$VNetPrefix12 -Subnet $fesub1,$besub1,$gwsub1
$gw1pip1 = New-AzPublicIpAddress -Name $GW1IPName1 -ResourceGroupName $RG1 -Location $Location1 -AllocationMethod Dynamic
$vnet1 = Get-AzVirtualNetwork -Name $VNetName1 -ResourceGroupName $RG1
$subnet1 = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" `
-VirtualNetwork $vnet1
$gw1ipconf1 = New-AzVirtualNetworkGatewayIpConfig -Name $GW1IPconf1 `
-Subnet $subnet1 -PublicIpAddress $gw1pip1
New-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1 `
-Location $Location1 -IpConfigurations $gw1ipconf1 -GatewayType Vpn `
-VpnType RouteBased -GatewaySku VpnGw1
New-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1 `
-Location $Location1 -GatewayIpAddress $LNGIP6 -AddressPrefix `
$LNGPrefix61,$LNGPrefix62
Passaggio 2: Creare una connessione VPN da sito a sito con un criterio IPsec/IKE
Creare un criterio IPsec/IKE
Questo script di esempio crea un criterio IPsec/IKE con gli algoritmi e i parametri seguenti:
- IKEv2: AES128, SHA1, DHGroup14
- IPsec: AES256, SHA256, nessuno, durata SA 14400 secondi e 102400000 KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup none -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
Se si usa GCMAES per IPsec, è necessario usare lo stesso algoritmo GCMAES e la stessa lunghezza della chiave sia per la crittografia IPsec che per l'integrità.
Creare la connessione VPN da sito a sito con i criteri IPsec/IKE
Creare una connessione VPN da sito a sito e applicare i criteri IPsec/IKE creati in precedenza:
$vnet1gw = Get-AzVirtualNetworkGateway -Name $GWName1 -ResourceGroupName $RG1
$lng6 = Get-AzLocalNetworkGateway -Name $LNGName6 -ResourceGroupName $RG1
New-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1 -VirtualNetworkGateway1 $vnet1gw -LocalNetworkGateway2 $lng6 -Location $Location1 -ConnectionType IPsec -IpsecPolicies $ipsecpolicy6 -SharedKey 'Azs123'
Importante
Dopo aver specificato un criterio IPsec/IKE in una connessione, il gateway VPN di Azure invia o accetta solo la proposta IPsec/IKE con algoritmi di crittografia e punti di forza della chiave specificati in tale connessione specifica. Assicurarsi che il dispositivo VPN locale per la connessione usi o accetti la combinazione di criteri esatta. In caso contrario, non è possibile stabilire il tunnel VPN da sito a sito.
Parte 4: Aggiornare i criteri IPsec/IKE per una connessione
La sezione precedente ha illustrato come gestire i criteri IPsec/IKE per una connessione da sito a sito esistente. In questa sezione vengono illustrate le operazioni seguenti su una connessione:
- Visualizzare i criteri IPsec/IKE di una connessione.
- Aggiungere o aggiornare i criteri IPsec/IKE a una connessione.
- Rimuovere i criteri IPsec/IKE da una connessione.
Nota
I criteri IPsec/IKE sono supportati solo nei Standard
Visualizzare i criteri IPsec/IKE di una connessione
L'esempio seguente illustra come ottenere i criteri IPsec/IKE configurati in una connessione. Gli script continuano anche dagli esercizi precedenti.
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
L'ultimo comando elenca i criteri IPsec/IKE correnti configurati nella connessione, se presenti. L'esempio seguente è un output di esempio per la connessione:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
Se non sono configurati criteri IPsec/IKE, il comando $connection6.policy
ottiene un ritorno vuoto. Non significa che IPsec/IKE non sia configurato nella connessione; significa che non sono presenti criteri IPsec/IKE personalizzati. La connessione effettiva usa i criteri predefiniti negoziati tra il dispositivo VPN locale e il gateway VPN di Azure.
Aggiungere o aggiornare un criterio IPsec/IKE per una connessione
I passaggi per aggiungere un nuovo criterio o aggiornare un criterio esistente in una connessione sono gli stessi: creare un nuovo criterio, quindi applicare il nuovo criterio alla connessione.
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$newpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup None -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
$connection6.SharedKey = "AzS123"
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6 -IpsecPolicies $newpolicy6
È possibile ottenere di nuovo la connessione per verificare se i criteri vengono aggiornati:
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
Verrà visualizzato l'output dell'ultima riga, come illustrato nell'esempio seguente:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
3. Rimuovere un criterio IPsec/IKE da una connessione
Dopo aver rimosso i criteri personalizzati da una connessione, il gateway VPN di Azure ripristina la proposta IPsec/IKE predefinitae rinegozia con il dispositivo VPN locale.
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.SharedKey = "AzS123"
$currentpolicy = $connection6.IpsecPolicies[0]
$connection6.IpsecPolicies.Remove($currentpolicy)
Set-AzVirtualNetworkGatewayConnection -VirtualNetworkGatewayConnection $connection6
È possibile usare lo stesso script per verificare se il criterio è stato rimosso dalla connessione.