Udostępnij za pośrednictwem


Konfigurowanie sieci VPN na urządzeniu Azure Stack Edge Mini R za pośrednictwem programu Azure PowerShell

Opcja sieci VPN zapewnia drugą warstwę szyfrowania dla ruchu danych za pośrednictwem protokołu TLS z urządzenia Azure Stack Edge Mini R lub Azure Stack Edge Pro R na platformę Azure. Sieć VPN można skonfigurować na urządzeniu Azure Stack Edge Mini R za pośrednictwem witryny Azure Portal lub programu Azure PowerShell.

W tym artykule opisano kroki wymagane do skonfigurowania sieci VPN typu punkt-lokacja (P2S) na urządzeniu Azure Stack Edge Mini R przy użyciu skryptu programu Azure PowerShell w celu utworzenia konfiguracji w chmurze. Konfiguracja na urządzeniu Azure Stack Edge odbywa się za pośrednictwem lokalnego interfejsu użytkownika.

Informacje o konfiguracji sieci VPN

Połączenie bramy sieci VPN punkt-lokacja umożliwia utworzenie bezpiecznego połączenia z siecią wirtualną z poziomu pojedynczego komputera klienckiego lub urządzenia Azure Stack Edge Mini R. Połączenie punkt-lokacja należy uruchomić z komputera klienckiego lub urządzenia. W tym przypadku połączenie typu punkt-lokacja używa sieci VPN IKEv2, opartego na standardach rozwiązania sieci VPN IPsec.

Typowy przepływ pracy obejmuje następujące kroki:

  1. Konfigurowanie wymagań wstępnych.
  2. Skonfiguruj niezbędne zasoby na platformie Azure.
    1. Utwórz i skonfiguruj sieć wirtualną oraz wymagane podsieci.
    2. Tworzenie i konfigurowanie bramy sieci VPN platformy Azure (bramy sieci wirtualnej).
    3. Skonfiguruj usługę Azure Firewall i dodaj reguły sieci i aplikacji.
    4. Tworzenie tabel routingu platformy Azure i dodawanie tras.
    5. Włącz połączenie typu punkt-lokacja w bramie sieci VPN.
      1. Dodaj pulę adresów klienta.
      2. Skonfiguruj typ tunelu.
      3. Skonfiguruj typ uwierzytelniania.
      4. Utwórz certyfikat.
      5. Przekaż certyfikat.
    6. Pobierz książkę telefoniczną.
  3. Skonfiguruj sieć VPN w lokalnym internetowym interfejsie użytkownika urządzenia.
    1. Podaj książkę telefoniczną.
    2. Podaj plik tagów usługi (json).

Szczegółowe kroki znajdują się w poniższych sekcjach.

Konfigurowanie wymagań wstępnych

  • Musisz mieć dostęp do urządzenia Azure Stack Edge Mini R zainstalowanego zgodnie z instrukcjami w temacie Instalowanie urządzenia Azure Stack Edge Mini R. To urządzenie będzie ustanawiać połączenie punkt-lokacja z platformą Azure.

  • Musisz mieć dostęp do prawidłowej subskrypcji platformy Azure, która jest włączona dla usługi Azure Stack Edge na platformie Azure. Ta subskrypcja umożliwia utworzenie odpowiedniego zasobu na platformie Azure w celu zarządzania urządzeniem Azure Stack Edge Mini R.

  • Masz dostęp do klienta systemu Windows, którego będziesz używać do uzyskiwania dostępu do urządzenia Azure Stack Edge Mini R. Użyjesz tego klienta do programowego utworzenia konfiguracji w chmurze.

    1. Aby zainstalować wymaganą wersję programu PowerShell na kliencie systemu Windows, uruchom następujące polecenia:

      Install-Module -Name Az -AllowClobber -Scope CurrentUser 
      Import-Module Az.Accounts
      
    2. Aby nawiązać połączenie z kontem i subskrypcją platformy Azure, uruchom następujące polecenia:

      Connect-AzAccount 
      Set-AzContext -Subscription "<Your subscription name>"
      

      Podaj nazwę subskrypcji platformy Azure używaną z urządzeniem Azure Stack Edge Mini R do konfigurowania sieci VPN.

    3. Pobierz skrypt wymagany do utworzenia konfiguracji w chmurze. Skrypt wykonuje następujące zadania:

      • Utwórz sieć wirtualną platformy Azure i następujące podsieci: GatewaySubnet i AzureFirewallSubnet.
      • Tworzenie i konfigurowanie bramy sieci VPN platformy Azure.
      • Tworzenie i konfigurowanie bramy sieci lokalnej platformy Azure.
      • Utwórz i skonfiguruj połączenie sieci VPN platformy Azure między bramą sieci VPN platformy Azure i bramą sieci lokalnej.
      • Utwórz usługę Azure Firewall i dodaj reguły sieciowe, reguły aplikacji.
      • Utwórz tabelę routingu platformy Azure i dodaj do niej trasy.
    4. Utwórz grupę zasobów w witrynie Azure Portal, w której mają zostać utworzone zasoby platformy Azure. Przejdź do listy usług w witrynie Azure Portal, wybierz pozycję Grupa zasobów, a następnie wybierz pozycję + Dodaj. Podaj informacje o subskrypcji i nazwę grupy zasobów, a następnie wybierz pozycję Utwórz. Jeśli przejdziesz do tej grupy zasobów, w tej chwili nie powinny znajdować się w niej żadne zasoby.

      Azure resource group

    5. Musisz mieć certyfikat zakodowany w .cer formacie Base 64 dla urządzenia Azure Stack Edge Mini R. Ten certyfikat powinien zostać przekazany do urządzenia usługi Azure Stack Edge, tak jak pfx w przypadku klucza prywatnego. Ten certyfikat należy również zainstalować w zaufanym katalogu głównym magazynu na kliencie, który próbuje ustanowić połączenie punkt-lokacja.

Korzystanie ze skryptu

Najpierw zmodyfikuj plik w parameters-p2s.json celu wprowadzenia parametrów. Następnie uruchom skrypt przy użyciu zmodyfikowanego pliku json.

Każdy z tych kroków został omówiony w poniższych sekcjach.

Pobieranie pliku tagów usługi

Być może masz ServiceTags.json już plik w folderze, w którym został pobrany skrypt. Jeśli nie, możesz pobrać plik tagów usługi.

Pobierz tagi usługi z platformy Azure do klienta lokalnego i zapisz je jako plik json w tym samym folderze, który zawiera skrypty: https://www.microsoft.com/download/details.aspx?id=56519.

Ten plik jest przekazywany w lokalnym internetowym interfejsie użytkownika w późniejszym kroku.

Modyfikowanie pliku parametrów

Pierwszym krokiem jest zmodyfikowanie parameters-p2s.json pliku i zapisanie zmian.

W przypadku utworzonych zasobów platformy Azure podaj następujące nazwy:

Nazwa parametru opis
virtualNetworks_vnet_name Nazwa usługi Azure Virtual Network
azureFirewalls_firewall_name Nazwa usługi Azure Firewall
routeTables_routetable_name Nazwa tabeli tras platformy Azure
publicIPAddresses_VNGW_public_ip_name Nazwa publicznego adresu IP bramy sieci wirtualnej
virtualNetworkGateways_VNGW_name Nazwa bramy sieci VPN platformy Azure (bramy sieci wirtualnej)
publicIPAddresses_firewall_public_ip_name Nazwa publicznego adresu IP dla usługi Azure Firewall
lokalizacja Jest to region, w którym chcesz utworzyć sieć wirtualną. Wybierz ten sam region co region skojarzony z urządzeniem.
RouteTables_routetable_onprem_name Jest to nazwa dodatkowej tabeli tras, która ułatwia kierowanie pakietów zapory z powrotem do urządzenia Azure Stack Edge. Skrypt tworzy dwie dodatkowe trasy i kojarzy wartości domyślne i FirewallSubnet z tą tabelą tras.

Podaj następujące adresy IP i przestrzenie adresowe dla utworzonych zasobów platformy Azure, w tym sieć wirtualną i skojarzone podsieci (domyślna, zapora, bramaSubnet).

Nazwa parametru opis
VnetIPv4AddressSpace Jest to przestrzeń adresowa skojarzona z siecią wirtualną. Podaj zakres adresów IP sieci wirtualnej jako zakres prywatnych adresów IP (https://en.wikipedia.org/wiki/Private_network#Private_IPv4_addresses).
DefaultSubnetIPv4AddressSpace Jest to przestrzeń adresowa skojarzona z podsiecią Default sieci wirtualnej.
FirewallSubnetIPv4AddressSpace Jest to przestrzeń adresowa skojarzona z podsiecią Firewall sieci wirtualnej.
GatewaySubnetIPv4AddressSpace Jest to przestrzeń adresowa skojarzona z siecią wirtualną GatewaySubnet .
GatewaySubnetIPv4bgpPeeringAddress Jest to adres IP zarezerwowany dla komunikacji BGP i jest oparty na przestrzeni adresowej skojarzonej GatewaySubnet z siecią wirtualną.
Pula clientAddress Ten adres IP jest używany dla puli adresów w konfiguracji punkt-lokacja w witrynie Azure Portal.
PublicCertData Dane certyfikatu publicznego są używane przez usługę VPN Gateway do uwierzytelniania klientów P2S łączących się z nim. Aby uzyskać dane certyfikatu, zainstaluj certyfikat główny. Upewnij się, że certyfikat jest zakodowany w formacie Base-64 z rozszerzeniem cer. Otwórz ten certyfikat i skopiuj tekst w certyfikacie między ==BEGIN CERTIFICATE== i ==END CERTIFICATE== w jednym ciągłym wierszu.

Uruchamianie skryptu

Wykonaj następujące kroki, aby użyć zmodyfikowanego parameters-p2s.json i uruchomić skrypt w celu utworzenia zasobów platformy Azure.

  1. Uruchom program PowerShell. Przejdź do katalogu, w którym znajduje się skrypt.

  2. Uruchom skrypt.

    .\AzDeployVpn.ps1 -Location <Location> -AzureAppRuleFilePath "appRule.json" -AzureIPRangesFilePath "<Service tag json file>" -ResourceGroupName "<Resource group name>" -AzureDeploymentName "<Deployment name>" -NetworkRuleCollectionName "<Name for collection of network rules>" -Priority 115 -AppRuleCollectionName "<Name for collection of app rules>"

    Uwaga

    W tej wersji skrypt działa tylko w lokalizacji Wschodnie stany USA.

    Podczas uruchamiania skryptu należy wprowadzić następujące informacje:

    Parametr Opis
    Lokalizacja Jest to region, w którym należy utworzyć zasoby platformy Azure.
    AzureAppRuleFilePath Jest to ścieżka pliku dla appRule.jsonelementu .
    AzureIPRangesFilePath Jest to plik json tagu usługi pobrany we wcześniejszym kroku.
    ResourceGroupName Jest to nazwa grupy zasobów, w ramach której są tworzone wszystkie zasoby platformy Azure.
    AzureDeploymentName Jest to nazwa wdrożenia platformy Azure.
    NetworkRuleCollectionName Jest to nazwa kolekcji wszystkich reguł sieci utworzonych i dodanych do usługi Azure Firewall.
    Priorytet Jest to priorytet przypisany do wszystkich utworzonych reguł sieci i aplikacji.
    AppRuleCollectionName Jest to nazwa kolekcji wszystkich reguł aplikacji, które zostały utworzone i dodane do usługi Azure Firewall.

    Poniżej pokazano przykładowe dane wyjściowe.

    PS C:\Offline docs\AzureVpnConfigurationScripts> .\AzDeployVpn.ps1 -Location eastus -AzureAppRuleFilePath "appRule.json" -AzureIPRangesFilePath ".\ServiceTags_Public_20200203.json" -ResourceGroupName "mytmarg3" -AzureDeploymentName "tmap2stestdeploy1" -NetworkRuleCollectionName "testnrc1" -Priority 115 -AppRuleCollectionName "testarc2"
        validating vpn deployment parameters
        Starting vpn deployment
        C:\Offline docs\AzureVpnConfigurationScripts\parameters-p2s.json
        C:\Offline docs\AzureVpnConfigurationScripts\template-p2s.json
        vpn deployment: tmap2stestdeploy1 started and status: Running
        Waiting for vpn deployment completion....
        ==== CUT ==================== CUT ==============
        Adding route 191.236.0.0/18 for AzureCloud.eastus
        Adding route 191.237.0.0/17 for AzureCloud.eastus
        Adding route 191.238.0.0/18 for AzureCloud.eastus
        Total Routes:294, Existing Routes: 74, New Routes Added: 220
        Additional routes getting added
    

    Ważne

    • Uruchomienie skryptu trwa około 90 minut. Przed rozpoczęciem skryptu upewnij się, że zaloguj się do sieci.
    • Jeśli z jakiegokolwiek powodu wystąpiła niepowodzenie sesji ze skryptem, pamiętaj, aby usunąć grupę zasobów, aby usunąć wszystkie utworzone w niej zasoby.

    Po zakończeniu wykonywania skryptu dziennik wdrożenia jest generowany w tym samym folderze, w którym znajduje się skrypt.

Weryfikowanie zasobów platformy Azure

Po pomyślnym uruchomieniu skryptu sprawdź, czy wszystkie zasoby zostały utworzone na platformie Azure. Przejdź do utworzonej grupy zasobów. Powinny zostać wyświetlone następujące zasoby:

Azure resources

Pobieranie książki telefonicznej dla profilu sieci VPN

W tym kroku pobierzesz profil sieci VPN dla urządzenia.

  1. W witrynie Azure Portal przejdź do grupy zasobów, a następnie wybierz bramę sieci wirtualnej utworzoną we wcześniejszym kroku.

    Azure virtual network gateway

  2. Przejdź do Ustawienia > konfiguracji punkt-lokacja. Wybierz pozycję Pobierz klienta sieci VPN.

    Enable P2S configuration 1

  3. Zapisz spakowany profil i wyodrębnij go na kliencie systemu Windows.

    Enable P2S configuration 2

  4. Przejdź do folderu WindowsAmd64 , a następnie wyodrębnij .exeplik : VpnClientSetupAmd64.exe.

    Enable P2S configuration 3

  5. Utwórz ścieżkę tymczasową. Przykład:

    C:\NewTemp\vnet\tmp

  6. Uruchom program PowerShell i przejdź do katalogu, w .exe którym znajduje się. Aby wykonać polecenie .exe, wpisz:

    .\VpnClientSetupAmd64.exe /Q /C /T:"C:\NewTemp\vnet\tmp"

  7. Ścieżka tymczasowa będzie miała nowe pliki. Oto przykładowe dane wyjściowe:

    
    PS C:\windows\system32> cd "C:\Users\Ase\Downloads\vngw5\WindowsAmd64"
    PS C:\Users\Ase\Downloads\vngw5\WindowsAmd64> .\VpnClientSetupAmd64.exe /Q /C /T:"C:\NewTemp\vnet\tmp"
    PS C:\Users\Ase\Downloads\vngw5\WindowsAmd64> cd "C:\NewTemp\vnet"
    PS C:\NewTemp\vnet> ls .\tmp
    
        Directory: C:\NewTemp\vnet\tmp
    
    Mode                LastWriteTime         Length Name
    ----                -------------         ------ ----
    -a----         2/6/2020   6:18 PM            947 8c670077-470b-421a-8dd8-8cedb4f2f08a.cer
    -a----         2/6/2020   6:18 PM            155 8c670077-470b-421a-8dd8-8cedb4f2f08a.cmp
    -a----         2/6/2020   6:18 PM           3564 8c670077-470b-421a-8dd8-8cedb4f2f08a.cms
    -a----         2/6/2020   6:18 PM          11535 8c670077-470b-421a-8dd8-8cedb4f2f08a.inf
    -a----         2/6/2020   6:18 PM           2285 8c670077-470b-421a-8dd8-8cedb4f2f08a.pbk
    -a----         2/6/2020   6:18 PM           5430 azurebox16.ico
    -a----         2/6/2020   6:18 PM           4286 azurebox32.ico
    -a----         2/6/2020   6:18 PM         138934 azurevpnbanner.bmp
    -a----         2/6/2020   6:18 PM          46064 cmroute.dll
    -a----         2/6/2020   6:18 PM            196 routes.txt
    
    PS C:\NewTemp\vnet>
    
  8. Plik pbk to książka telefoniczna profilu sieci VPN. Będzie to używane w lokalnym interfejsie użytkownika.

Konfiguracja sieci VPN na urządzeniu

Wykonaj następujące kroki w lokalnym interfejsie użytkownika urządzenia Azure Stack Edge.

  1. W lokalnym interfejsie użytkownika przejdź do strony sieci VPN . W obszarze Stan sieci VPN wybierz pozycję Konfiguruj.

    Configure VPN 1

  2. W bloku Konfigurowanie sieci VPN :

    1. W pliku Przekaż książkę telefoniczną wskaż plik pbk utworzony we wcześniejszym kroku.
    2. W pliku konfiguracji przekaż publiczny adres IP podaj plik JSON zakresu adresów IP centrum danych Platformy Azure jako dane wejściowe. Ten plik został pobrany we wcześniejszym kroku od: https://www.microsoft.com/download/details.aspx?id=56519.
    3. Wybierz pozycję eastus jako region i wybierz pozycję Zastosuj.

    Configure VPN 2

  3. W sekcji Zakresy adresów IP, do których chcesz uzyskać dostęp przy użyciu tylko sieci VPN, wprowadź zakres adresów IPv4 sieci wirtualnej wybrany dla usługi Azure Virtual Network.

    Configure VPN 3

Weryfikowanie połączenia klienta

  1. W witrynie Azure Portal przejdź do bramy sieci VPN.
  2. Przejdź do Ustawienia > konfiguracji punkt-lokacja. W obszarze Przydzielone adresy IP powinien zostać wyświetlony adres IP urządzenia Azure Stack Edge.

Weryfikowanie transferu danych za pośrednictwem sieci VPN

Aby potwierdzić, że sieć VPN działa, skopiuj dane do udziału SMB. Wykonaj kroki opisane w artykule Dodawanie udziału na urządzeniu Azure Stack Edge.

  1. Skopiuj plik, na przykład \data\pictures\waterfall.jpg do udziału SMB zainstalowanego w systemie klienckim.

  2. Aby sprawdzić, czy dane przechodzą przez sieć VPN, podczas kopiowania danych:

    1. Przejdź do bramy sieci VPN w witrynie Azure Portal.

    2. Przejdź do pozycji Metryki monitorowania>.

    3. W okienku po prawej stronie wybierz pozycję Zakres jako bramę sieci VPN, Metryka jako przepustowość punkt-lokacja i Agregacja jako średnia.

    4. Podczas kopiowania danych zobaczysz wzrost wykorzystania przepustowości, a po zakończeniu kopiowania danych wykorzystanie przepustowości spadnie.

      Azure vpn metrics

  3. Sprawdź, czy ten plik jest wyświetlany na koncie magazynu w chmurze.

Problemy z debugowaniem

Aby debugować wszelkie problemy, użyj następujących poleceń:

Get-AzResourceGroupDeployment -DeploymentName $deploymentName -ResourceGroupName $ResourceGroupName

Poniżej przedstawiono przykładowe dane wyjściowe:

PS C:\Projects\TZL\VPN\Azure-VpnDeployment> Get-AzResourceGroupDeployment -DeploymentName "tznvpnrg14_deployment" -ResourceGroupName "tznvpnrg14"


DeploymentName          : tznvpnrg14_deployment
ResourceGroupName       : tznvpnrg14
ProvisioningState       : Succeeded
Timestamp               : 1/21/2020 6:23:13 PM
Mode                    : Incremental
TemplateLink            :
Parameters              :
                          Name                                         Type                       Value
                          ===========================================  =========================  ==========
                          virtualNetworks_vnet_name                    String                     tznvpnrg14_vnet
                          azureFirewalls_firewall_name                 String                     tznvpnrg14_firewall
                          routeTables_routetable_name                  String                     tznvpnrg14_routetable
                          publicIPAddresses_VNGW_public_ip_name        String                     tznvpnrg14_vngwpublicip
                          virtualNetworkGateways_VNGW_name             String                     tznvpnrg14_vngw
                          publicIPAddresses_firewall_public_ip_name    String                     tznvpnrg14_fwpip
                          localNetworkGateways_LNGW_name               String                     tznvpnrg14_lngw
                          connections_vngw_lngw_name                   String                     tznvpnrg14_connection
                          location                                     String                     East US
                          vnetIPv4AddressSpace                         String                     172.24.0.0/16
                          defaultSubnetIPv4AddressSpace                String                     172.24.0.0/24
                          firewallSubnetIPv4AddressSpace               String                     172.24.1.0/24
                          gatewaySubnetIPv4AddressSpace                String                     172.24.2.0/24
                          gatewaySubnetIPv4bgpPeeringAddress           String                     172.24.2.254
                          customerNetworkAddressSpace                  String                     10.0.0.0/18
                          customerPublicNetworkAddressSpace            String                     207.68.128.0/24
                          dbeIOTNetworkAddressSpace                    String                     10.139.218.0/24
                          azureVPNsharedKey                            String                     1234567890
                          dbE-Gateway-ipaddress                        String                     207.68.128.113

Outputs                 :
                          Name                     Type                       Value
                          =======================  =========================  ==========
                          virtualNetwork           Object                     {
                            "provisioningState": "Succeeded",
                            "resourceGuid": "dcf673d3-5c73-4764-b077-77125eda1303",
                            "addressSpace": {
                              "addressPrefixes": [
                                "172.24.0.0/16"
                              ]
================= CUT ============================= CUT ===========================
Get-AzResourceGroupDeploymentOperation -ResourceGroupName $ResourceGroupName -DeploymentName $AzureDeploymentName

Następne kroki

Skonfiguruj sieć VPN za pośrednictwem lokalnego interfejsu użytkownika na urządzeniu Azure Stack Edge.