Udostępnij za pośrednictwem


Konfigurowanie zasad protokołu IPsec/IKE dla połączeń sieci VPN typu lokacja-lokacja

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 dotyczące

Podczas korzystania z tych zasad należy pamiętać o następujących ważnych kwestiach:

  • Zasady protokołu IPsec/IKE działają tylko na bramach Standard i HighPerformance SKU (trasowanych).
  • Dla danego połączenia można określić tylko jedną kombinację zasad.
  • Należy określić wszystkie algorytmy i parametry dla protokołu IKE (tryb główny) i IPsec (tryb szybki). Częściowa specyfikacja zasad nie jest dozwolona.
  • 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.

Warunki 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 zarejestrować się w celu uzyskania bezpłatnego konta .
  • Polecenia cmdlet PowerShell dla Azure Resource Manager. Aby uzyskać więcej informacji na temat instalowania poleceń cmdlet programu PowerShell, zobacz Install PowerShell for 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:

  1. Utwórz sieć wirtualną i bramę sieci VPN.
  2. Utwórz bramę sieci lokalnej na potrzeby połączenia obejmującego wiele lokalizacji.
  3. Utwórz zasady IPsec/IKE z wybranymi algorytmami i parametrami.
  4. Utwórz połączenie IPSec z polityką IPsec/IKE.
  5. 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:

Konfigurowanie i konfigurowanie zasad protokołu IPsec/IKE

Część 2 . Obsługiwane algorytmy kryptograficzne i mocne strony klucza

W poniższej tabeli wymieniono obsługiwane algorytmy kryptograficzne i mocne strony klucza 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, None
Integralność IPsec GCMAES256, GCMAES192, GCMAES128, SHA256
Grupa PFS PFS24, ECP384, ECP256, PFS2048, PFS2, PFS1, PFSMM, None
Okres istnienia programu QM SA (Opcjonalnie: wartości domyślne są używane, jeśli nie zostaną określone)
Sekundy (liczba całkowita; min. 300/domyślna 27000 sekund)
KBytes (liczba całkowita; min. 1024/domyślnie 102400000 KBytes)
Selektor ruchu Selektory ruchu oparte na zasadach nie są obsługiwane w usłudze Azure Stack Hub.

Notatka

Ustawienie zbyt niskiego czasu życia skojarzenia zabezpieczeń QM wymaga niepotrzebnego ponownego generowania kluczy, co może obniżyć wydajność.

  • Konfiguracja lokalnego urządzenia sieci VPN musi być zgodna z następującymi algorytmami i parametrami określonymi w zasadach protokołu IPsec/IKE platformy Azure:

    • 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 życia SA są tylko specyfikacjami lokalnymi i nie muszą być zgodne.
  • Jeśli GCMAES jest używany jako algorytm szyfrowania IPsec, musisz wybrać ten sam algorytm GCMAES i długość klucza dla integralności IPsec; na przykład użycie GCMAES128 dla obu.

  • W poprzedniej tabeli:

    • Protokół IKEv2 odpowiada trybowi głównemu lub fazie 1.
    • Protokół IPsec odpowiada trybowi szybkiemu lub 2.
    • Grupa DH określa grupę Diffie-Hellmen używaną w Trybie Głównym lub Fazie 1.
    • Grupa PFS precyzuje grupę Diffie-Hellmen używaną w trybie szybkim lub w Faza 2.
  • Okres istnienia skojarzenia zabezpieczeń trybu głównego 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-Hellman 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 256-bitowy ECP
20 ECP384 ECP384 384-bitowa usługa ECP
24 DHGroup24 PFS24 MODP 2048-bitowy

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 opisano kroki tworzenia połączenia sieci VPN typu lokacja-lokacja z zasadami protokołu IPsec/IKE. Poniższe kroki umożliwiają utworzenie połączenia, jak pokazano na poniższym rysunku:

zasada lokalizacja-lokalizacja

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

Deklarowanie zmiennych

W tym ćwiczeniu zacznij od zadeklarowania następujących zmiennych. Pamiętaj, aby zastąpić wartości domyślne własnymi wartościami przy konfiguracji ś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"

Nawiązywanie połączenia z subskrypcją i tworzenie nowej grupy zasobów

Upewnij się, że przełączysz się do trybu programu PowerShell, aby użyć poleceń cmdlet usługi Resource Manager. Aby uzyskać więcej informacji, zobacz Połącz się z Azure Stack Hub za pomocą 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

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 dokładnie określić nazwę podsieci bramki GatewaySubnet. Jeśli nadasz mu inną nazwę, tworzenie 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

Tworzenie zasad protokołu IPsec/IKE

Ten przykładowy skrypt tworzy zasady IPsec/IKE z następującymi algorytmami i parametrami:

  • IKEv2: AES128, SHA1, DHGroup14
  • IPsec: AES256, SHA256, none, SA Lifetime 14400 sekund i 102400000 KB
$ipsecpolicy6 = New-AzIpsecPolicy -IkeEncryption AES128 -IkeIntegrity SHA1 -DhGroup DHGroup14 -IpsecEncryption AES256 -IpsecIntegrity SHA256 -PfsGroup none -SALifeTimeSeconds 14400 -SADataSizeKilobytes 102400000

Jeśli używasz GCMAES dla protokołu IPsec, musisz użyć tego samego algorytmu GCMAES i długości klucza dla szyfrowania i integralności protokołu IPsec.

Tworzenie połączenia sieci VPN typu lokacja-lokacja przy użyciu zasad 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żny

Po określeniu zasad protokołu IPsec/IKE dla połączenia brama sieci VPN platformy Azure wysyła lub akceptuje propozycję protokołu IPsec/IKE z określonymi algorytmami kryptograficznymi i określoną siłą kluczy dla tego konkretnego połączenia. 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 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.

Notatka

Zasady protokołu IPsec/IKE są obsługiwane tylko w bramach sieci VPN opartych na trasach typu Standard i HighPerformance. Nie działa na bramie Podstawowa SKU.

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.

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 zostanie przywrócona do domyślnej propozycji protokołu IPsec/IKEi renegocjacji za pomocą 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.

Następne kroki