Konfigurowanie zasad protokołu IPsec/IKE dla połączeń międzylokacyjnej sieci VPN
W tym artykule opisano kroki konfigurowania zasad protokołu IPsec/IKE dla połączeń sieci VPN typu lokacja-lokacja (S2S) w usłudze Azure Stack Hub.
Parametry zasad protokołu IPsec i IKE dla bram sieci VPN
Standard protokołu IPsec i IKE obsługuje szeroką gamę algorytmów kryptograficznych w różnych kombinacjach. Aby sprawdzić, które parametry są obsługiwane w usłudze Azure Stack Hub, aby spełnić wymagania dotyczące zgodności lub zabezpieczeń, zobacz Parametry protokołu IPsec/IKE.
Ten artykuł zawiera instrukcje dotyczące tworzenia i konfigurowania zasad protokołu IPsec/IKE oraz stosowania ich do nowego lub istniejącego połączenia.
Zagadnienia do rozważenia
Podczas korzystania z tych zasad należy zwrócić uwagę na następujące ważne kwestie:
Zasady protokołu IPsec/IKE działają tylko na jednostkach SKU bramy standardowej iwysokiej wydajności (opartej na trasach).
Można określić tylko jedną kombinację zasad dla danego połączenia.
Należy określić wszystkie algorytmy i parametry dla protokołu IKE (tryb główny) i protokołu IPsec (tryb szybki). Określenie zasad częściowych nie jest dozwolone.
Zapoznaj się ze specyfikacjami dostawcy urządzeń sieci VPN, aby upewnić się, że zasady są obsługiwane na lokalnych urządzeniach sieci VPN. Nie można ustanowić połączeń typu lokacja-lokacja, jeśli zasady są niezgodne.
Wymagania wstępne
Przed rozpoczęciem upewnij się, że masz następujące wymagania wstępne:
Subskrypcja platformy Azure. Jeśli nie masz jeszcze subskrypcji platformy Azure, możesz aktywować korzyści dla subskrybentów MSDN lub utworzyć bezpłatne konto.
Polecenia cmdlet programu PowerShell w usłudze Azure Resource Manager. Aby uzyskać więcej informacji na temat instalowania poleceń cmdlet programu PowerShell, zobacz Instalowanie programu PowerShell dla usługi Azure Stack Hub.
Część 1 . Tworzenie i ustawianie zasad protokołu IPsec/IKE
W tej sekcji opisano kroki wymagane do utworzenia i zaktualizowania zasad protokołu IPsec/IKE w połączeniu sieci VPN typu lokacja-lokacja:
Utwórz sieć wirtualną i bramę sieci VPN.
Utwórz bramę sieci lokalnej na potrzeby połączenia obejmującego wiele lokalizacji.
Utwórz zasady protokołu IPsec/IKE z wybranymi algorytmami i parametrami.
Utwórz połączenie IPSec z zasadami protokołu IPsec/IKE.
Dodaj/zaktualizuj/usuń zasady protokołu IPsec/IKE dla istniejącego połączenia.
Instrukcje przedstawione w tym artykule ułatwiają konfigurowanie i konfigurowanie zasad protokołu IPsec/IKE, jak pokazano na poniższej ilustracji:
Część 2. Obsługiwane algorytmy kryptograficzne i mocne strony klucza
W poniższej tabeli wymieniono obsługiwane algorytmy kryptograficzne i siły kluczy konfigurowalne przez usługę Azure Stack Hub:
IPsec/IKEv2 | Opcje |
---|---|
Szyfrowanie IKEv2 | AES256, AES192, AES128, DES3, DES |
Integralność IKEv2 | SHA384, SHA256, SHA1, MD5 |
Grupa DH | ECP384, DHGroup14, DHGroup2, DHGroup1, ECP256*, DHGroup24* |
Szyfrowanie IPsec | GCMAES256, GCMAES192, GCMAES128, AES256, AES192, AES128, DES3, DES, Brak |
Integralność IPsec | GCMAES256, GCMAES192, GCMAES128, SHA256 |
Grupa PFS | PFS24, ECP384, ECP256, PFS2048, PFS2, PFS1, PFSMM, None |
Okres istnienia skojarzeń zabezpieczeń QM | (Opcjonalnie: wartości domyślne są używane, jeśli nie zostaną określone) Sekundy (liczba całkowita; min. 300/wartość domyślna 27 000 sekund) KB (liczba całkowita; min. 1024/wartość domyślna to 102 400 000 KB) |
Selektor ruchu | Selektory ruchu oparte na zasadach nie są obsługiwane w usłudze Azure Stack Hub. |
Uwaga
Ustawienie okresu istnienia skojarzenia zabezpieczeń QM za niskie wymaga niepotrzebnego ponownego klucza, co może obniżyć wydajność.
* Te parametry są dostępne tylko w kompilacjach 2002 i nowszych.
Konfiguracja lokalnego urządzenia sieci VPN musi być zgodna z następującymi algorytmami (lub je zawierać) oraz z następującymi parametrami określonymi w zasadach protokołu IPsec/IKE platformy Azure (lub je zawierać):
- Algorytm szyfrowania IKE (tryb główny/faza 1).
- Algorytm integralności IKE (tryb główny/faza 1).
- Grupa DH (tryb główny/faza 1).
- Algorytm szyfrowania IPsec (tryb szybki/faza 2).
- Algorytm integralności IPsec (tryb szybki/faza 2).
- Grupa PFS (tryb szybki/faza 2).
- Okresy istnienia skojarzeń zabezpieczeń są tylko specyfikacjami lokalnymi i nie muszą być zgodne.
Jeśli GCMAES jest używany jako algorytm szyfrowania IPsec, należy wybrać ten sam algorytm GCMAES i długość klucza dla integralności IPsec; na przykład użycie GCMAES128 dla obu.
W powyższej tabeli:
- Protokół IKEv2 odpowiada trybowi głównemu lub fazie 1.
- Protokół IPsec odpowiada trybowi szybkiemu lub fazie 2.
- Grupa DH określa grupę Diffie-Hellmen używaną w trybie głównym lub 1.
- Grupa PFS określa grupę Diffie-Hellmen używaną w trybie szybkim lub 2.
Okres istnienia skojarzenia zabezpieczeń trybu głównego protokołu IKEv2 jest stały na poziomie 28 800 sekund w bramach sieci VPN usługi Azure Stack Hub.
W poniższej tabeli wymieniono odpowiednie grupy Diffie-Hellman obsługiwane przez zasady niestandardowe:
Grupa Diffie’ego-Hellmana | DHGroup | PFSGroup | Długość klucza |
---|---|---|---|
1 | DHGroup1 | PFS1 | MODP, 768-bitowy |
2 | DHGroup2 | PFS2 | MODP, 1024-bitowy |
14 | DHGroup14 DHGroup2048 |
PFS2048 | MODP, 2048-bitowy |
19 | ECP256* | ECP256 | ECP, 256-bitowy |
20 | ECP384 | ECP384 | ECP, 384-bitowy |
24 | DHGroup24* | PFS24 | MODP, 2048-bitowy |
* Te parametry są dostępne tylko w kompilacjach 2002 i nowszych.
Aby uzyskać więcej informacji, zobacz RFC3526 i RFC5114.
Część 3 . Tworzenie nowego połączenia sieci VPN typu lokacja-lokacja z zasadami protokołu IPsec/IKE
W tej sekcji przedstawiono kroki tworzenia połączenia sieci VPN typu lokacja-lokacja z zasadami protokołu IPsec/IKE. Poniższe kroki tworzą połączenie, jak pokazano na poniższej ilustracji:
Aby uzyskać bardziej szczegółowe instrukcje krok po kroku dotyczące tworzenia połączenia sieci VPN typu lokacja-lokacja, zobacz Tworzenie połączenia sieci VPN typu lokacja-lokacja.
Krok 1. Tworzenie sieci wirtualnej, bramy sieci VPN i bramy sieci lokalnej
1. Deklarowanie zmiennych
W tym ćwiczeniu zacznij od zadeklarowania następujących zmiennych. Pamiętaj, aby zastąpić symbole zastępcze własnymi wartościami podczas konfigurowania dla środowiska produkcyjnego:
$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"
2. Połącz się z subskrypcją i utwórz nową grupę zasobów
Upewnij się, że program PowerShell został przełączony do trybu umożliwiającego korzystanie z poleceń cmdlet usługi Resource Manager. Aby uzyskać więcej informacji, zobacz Connect to Azure Stack Hub with PowerShell as a user (Nawiązywanie połączenia z usługą Azure Stack Hub przy użyciu programu PowerShell jako użytkownik).
Otwórz konsolę programu PowerShell i połącz się z kontem; na przykład:
Connect-AzAccount
Select-AzSubscription -SubscriptionName $Sub1
New-AzResourceGroup -Name $RG1 -Location $Location1
3. Tworzenie sieci wirtualnej, bramy sieci VPN i bramy sieci lokalnej
Poniższy przykład tworzy sieć wirtualną TestVNet1 wraz z trzema podsieciami i bramą sieci VPN. Podczas zastępowania wartości ważne jest, aby nazwać podsieć bramy Podsieć GatewaySubnet. W przypadku nadania jej innej nazwy proces tworzenia bramy zakończy się niepowodzeniem.
$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
Krok 2. Tworzenie połączenia sieci VPN typu lokacja-lokacja z zasadami protokołu IPsec/IKE
1. Tworzenie zasad protokołu IPsec/IKE
Ten przykładowy skrypt tworzy zasady protokołu IPsec/IKE z następującymi algorytmami i parametrami:
- IKEv2: AES128, SHA1, DHGroup14
- IPsec: AES256, SHA256, none, SA Lifetime 14400 sekund i 10240000 KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup none -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000
Jeśli używasz protokołu GCMAES dla protokołu IPsec, musisz użyć tego samego algorytmu GCMAES i długości klucza zarówno dla szyfrowania IPsec, jak i integralności.
2. Utwórz połączenie sieci VPN typu lokacja-lokacja z zasadami protokołu IPsec/IKE
Utwórz połączenie sieci VPN typu lokacja-lokacja i zastosuj utworzone wcześniej zasady protokołu IPsec/IKE:
$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'
Ważne
Po określeniu zasad protokołu IPsec/IKE w połączeniu brama sieci VPN platformy Azure wysyła lub akceptuje propozycję protokołu IPsec/IKE z określonymi algorytmami kryptograficznymi i mocnymi kluczami w tym konkretnym połączeniu. Upewnij się, że lokalne urządzenie sieci VPN dla połączenia używa lub akceptuje dokładną kombinację zasad, w przeciwnym razie nie można ustanowić tunelu VPN typu lokacja-lokacja.
Część 4 . Aktualizowanie zasad protokołu IPsec/IKE dla połączenia
W poprzedniej sekcji pokazano, jak zarządzać zasadami protokołu IPsec/IKE dla istniejącego połączenia typu lokacja-lokacja. W tej sekcji przedstawiono następujące operacje na połączeniu:
- Pokaż zasady protokołu IPsec/IKE połączenia.
- Dodaj lub zaktualizuj zasady protokołu IPsec/IKE do połączenia.
- Usuń zasady protokołu IPsec/IKE z połączenia.
Uwaga
Zasady protokołu IPsec/IKE są obsługiwane tylko w przypadku bram sieci VPN opartych na trasach w warstwie Standardowa i HighPerformance . Nie działa on w jednostce SKU bramy Podstawowej .
1. Pokaż zasady protokołu IPsec/IKE połączenia
W poniższym przykładzie pokazano, jak skonfigurować zasady protokołu IPsec/IKE na połączeniu. Skrypty są również kontynuowane z poprzednich ćwiczeń.
$RG1 = "TestPolicyRG1"
$Connection16 = "VNet1toSite6"
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
Ostatnie polecenie zawiera listę bieżących zasad protokołu IPsec/IKE skonfigurowanych w połączeniu, jeśli istnieje. Poniższy przykład to przykładowe dane wyjściowe połączenia:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
Jeśli nie skonfigurowano żadnych zasad protokołu IPsec/IKE, polecenie $connection6.policy
otrzyma pusty zwrot. Nie oznacza to, że protokół IPsec/IKE nie jest skonfigurowany w połączeniu; Oznacza to, że nie ma niestandardowych zasad protokołu IPsec/IKE. Rzeczywiste połączenie używa domyślnych zasad wynegocjowanych między lokalnym urządzeniem sieci VPN a bramą sieci VPN platformy Azure.
2. Dodawanie lub aktualizowanie zasad protokołu IPsec/IKE dla połączenia
Kroki dodawania nowych zasad lub aktualizowania istniejących zasad w połączeniu są takie same: utwórz nowe zasady, a następnie zastosuj nowe zasady do połączenia:
$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
Możesz ponownie pobrać połączenie, aby sprawdzić, czy zasady zostały zaktualizowane:
$connection6 = Get-AzVirtualNetworkGatewayConnection -Name $Connection16 -ResourceGroupName $RG1
$connection6.IpsecPolicies
Powinny zostać wyświetlone dane wyjściowe z ostatniego wiersza, jak pokazano w poniższym przykładzie:
SALifeTimeSeconds : 14400
SADataSizeKilobytes : 102400000
IpsecEncryption : AES256
IpsecIntegrity : SHA256
IkeEncryption : AES128
IkeIntegrity : SHA1
DhGroup : DHGroup14
PfsGroup : None
3. Usuwanie zasad protokołu IPsec/IKE z połączenia
Po usunięciu zasad niestandardowych z połączenia brama sieci VPN platformy Azure powróci do domyślnej propozycji protokołu IPsec/IKE i renegocjacji przy użyciu lokalnego urządzenia sieci VPN.
$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
Możesz użyć tego samego skryptu, aby sprawdzić, czy zasady zostały usunięte z połączenia.