Freigeben über


Konfigurieren von VPN auf Ihrem Azure Stack Edge Mini R-Gerät über Azure PowerShell

Die VPN-Option bietet eine zweite Verschlüsselungsebene für die Daten in Bewegung über TLS von Ihrem Azure Stack Edge Mini R- oder Azure Stack Edge Pro R-Gerät zu Azure. Sie können VPN auf Ihrem Azure Stack Edge Mini R-Gerät über das Azure-Portal oder über die Azure PowerShell konfigurieren.

In diesem Artikel werden die Erforderlichen Schritte zum Konfigurieren eines Point-to-Site-VPN (P2S) auf Ihrem Azure Stack Edge Mini R-Gerät mithilfe eines Azure PowerShell-Skripts zum Erstellen der Konfiguration in der Cloud beschrieben. Die Konfiguration auf dem Azure Stack Edge-Gerät erfolgt über die lokale Benutzeroberfläche.

Informationen zum VPN-Setup

Mit einer P2S-VPN-Gatewayverbindung können Sie eine sichere Verbindung mit Ihrem virtuellen Netzwerk von einem einzelnen Clientcomputer oder Ihrem Azure Stack Edge Mini R-Gerät herstellen. Sie starten die P2S-Verbindung vom Clientcomputer oder gerät. Die P2S-Verbindung in diesem Fall verwendet IKEv2 VPN, eine standardsbasierte IPsec VPN-Lösung.

Der typische Arbeitsablauf umfasst die folgenden Schritte:

  1. Konfigurieren Sie die Voraussetzungen.
  2. Richten Sie die erforderlichen Ressourcen in Azure ein.
    1. Erstellen und Konfigurieren eines virtuellen Netzwerks und erforderlicher Subnetze.
    2. Erstellen und Konfigurieren eines Azure VPN-Gateways (virtuelles Netzwerkgateway).
    3. Richten Sie Azure Firewall ein, und fügen Sie Netzwerk- und App-Regeln hinzu.
    4. Erstellen Sie Azure-Routingtabellen, und fügen Sie Routen hinzu.
    5. Aktivieren Sie Point-to-Site im VPN-Gateway.
      1. Fügen Sie den Client-Adresspool hinzu.
      2. Tunneltyp konfigurieren.
      3. Authentifizierungstyp konfigurieren.
      4. Zertifikat erstellen.
      5. Laden Sie das Zertifikat hoch.
    6. Laden Sie das Telefonbuch herunter.
  3. Richten Sie VPN in der lokalen Web-UI des Geräts ein.
    1. Stellen Sie ein Telefonbuch bereit.
    2. Stellen Sie die Datei mit den Service-Tags (json) bereit.

Die detaillierten Schritte finden Sie in den folgenden Abschnitten.

Voraussetzungen konfigurieren

  • Sie sollten zugriff auf ein Azure Stack Edge Mini R-Gerät haben, das gemäß den Anweisungen unter Installieren Ihres Azure Stack Edge Mini R-Geräts installiert ist. Dieses Gerät wird eine P2S-Verbindung mit Azure herstellen.

  • Sie sollten Zugriff auf ein gültiges Azure-Abonnement haben, das für den Azure Stack Edge-Dienst in Azure aktiviert ist. Verwenden Sie dieses Abonnement, um eine entsprechende Ressource in Azure zu erstellen, um Ihr Azure Stack Edge Mini R-Gerät zu verwalten.

  • Sie haben Zugriff auf einen Windows-Client, den Sie für den Zugriff auf Ihr Azure Stack Edge Mini R-Gerät verwenden. Sie verwenden diesen Client, um die Konfiguration programmgesteuert in der Cloud zu erstellen.

    1. Führen Sie die folgenden Befehle aus, um die erforderliche Version von PowerShell auf Ihrem Windows-Client zu installieren:

      Install-Module -Name Az -AllowClobber -Scope CurrentUser 
      Import-Module Az.Accounts
      
    2. Führen Sie die folgenden Befehle aus, um eine Verbindung mit Ihrem Azure-Konto und -Abonnement herzustellen:

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

      Geben Sie den Azure-Abonnementnamen an, den Sie mit Ihrem Azure Stack Edge Mini R-Gerät zum Konfigurieren von VPN verwenden.

    3. Laden Sie das skript herunter, das zum Erstellen der Konfiguration in der Cloud erforderlich ist. Das Skript sieht wie folgt aus:

      • Erstellen Sie ein virtuelles Azure-Netzwerk und die folgenden Subnetze: GatewaySubnet und AzureFirewallSubnet.
      • Erstellen und Konfigurieren eines Azure VPN-Gateways.
      • Erstellen und Konfigurieren eines lokalen Azure-Netzwerkgateways.
      • Erstellen und Konfigurieren einer Azure VPN-Verbindung zwischen dem Azure-VPN-Gateway und dem lokalen Netzwerkgateway.
      • Erstellen Sie eine Azure-Firewall, und fügen Sie Netzwerkregeln, App-Regeln hinzu.
      • Erstellen Sie eine Azure Routing-Tabelle, und fügen Sie ihr Routen hinzu.
    4. Erstellen Sie die Ressourcengruppe im Azure-Portal, unter der die Azure-Ressourcen erstellt werden sollen. Wechseln Sie zur Liste der Dienste im Azure-Portal, wählen Sie "Ressourcengruppe " und dann "+Hinzufügen" aus. Geben Sie die Abonnementinformationen und den Namen für Ihre Ressourcengruppe an, und wählen Sie dann "Erstellen" aus. Wenn Sie zu dieser Ressourcengruppe wechseln, sollte sie zu diesem Zeitpunkt keine Ressourcen enthalten.

      Azure-Ressourcengruppe

    5. Sie müssen über ein Base64-codiertes Zertifikat im .cer Format für Ihr Azure Stack Edge Mini R-Gerät verfügen. Laden Sie dieses Zertifikat mit einem privaten Schlüssel als pfx auf Ihr Azure Stack Edge-Gerät hoch. Dieses Zertifikat muss auch im vertrauenswürdigen Stammverzeichnis des Speichers auf dem Client installiert sein, der versucht, die P2S-Verbindung herzustellen.

Verwenden des Skripts

Zuerst ändern Sie die parameters-p2s.json Datei so, dass Sie Ihre Parameter eingeben. Als Nächstes führen Sie das Skript mit der geänderten JSON-Datei aus.

Jede dieser Schritte wird in den folgenden Abschnitten erläutert.

Herunterladen der Datei mit den Diensttags

Möglicherweise verfügen Sie bereits über eine ServiceTags.json Datei im Ordner, in den Sie das Skript heruntergeladen haben. Wenn nicht, können Sie die Diensttags-Datei herunterladen.

Laden Sie die Diensttags aus dem Azure auf Ihren lokalen Client herunter, und speichern Sie sie als JSON-Datei im selben Ordner, der die Skripts enthält: https://www.microsoft.com/download/details.aspx?id=56519

Diese Datei wird in der lokalen Web-UI zu einem späteren Schritt hochgeladen.

Parameterdatei ändern

Der erste Schritt wäre das Ändern der parameters-p2s.json Datei und das Speichern der Änderungen.

Für die azure-Ressourcen, die Sie erstellen, geben Sie die folgenden Namen an:

Parametername Description
virtualNetworks_vnet_name Name des virtuellen Azure-Netzwerks
azureFirewalls_firewall_name Name der Azure-Firewall
routeTables_routetable_name Azure Route-Tabellenname
publicIPAddresses_VNGW_public_ip_name Name der öffentlichen IP-Adresse für Ihr virtuelles Netzwerkgateway
virtualNetworkGateways_VNGW_name Name des Azure VPN-Gateways (virtuelles Netzwerkgateway)
publicIPAddresses_firewall_public_ip_name Öffentlicher IP-Adressname für Ihre Azure-Firewall
location Dies ist die Region, in der Sie Ihr virtuelles Netzwerk erstellen möchten. Wählen Sie dieselbe Region wie die region aus, die Ihrem Gerät zugeordnet ist.
RouteTables_routetable_onprem_name Dies ist der Name der zusätzlichen Routentabelle, um die Firewall-Pakete zurück an das Azure Stack Edge-Gerät weiterzuleiten. Das Skript erstellt zwei zusätzliche Routen und ordnet "Default " und "FirewallSubnet " dieser Routentabelle zu.

Geben Sie die folgenden IP-Adressen und Adressräume für die Azure-Ressourcen an, die erstellt werden, einschließlich des virtuellen Netzwerks und der zugehörigen Subnetze (Standard, Firewall, GatewaySubnet).

Parametername Description
VnetIPv4AddressSpace Dies ist der Adressraum, der Ihrem virtuellen Netzwerk zugeordnet ist. Bereitstellen des Vnet-IP-Bereichs als privater IP-Bereich (https://en.wikipedia.org/wiki/Private_network#Private_IPv4_addresses).
DefaultSubnetIPv4AddressSpace Dies ist der Adressraum, der dem Default Subnetz für Ihr virtuelles Netzwerk zugeordnet ist.
Firewall-Subnetz-IPv4-Adressraum Dies ist der Adressraum, der dem Firewall Subnetz für Ihr virtuelles Netzwerk zugeordnet ist.
GatewaySubnetIPv4AddressSpace Dies ist der Adressraum, der dem GatewaySubnet virtuellen Netzwerk zugeordnet ist.
GatewaySubnetIPv4bgpPeeringAddress Dies ist die IP-Adresse, die für die BGP-Kommunikation reserviert ist und auf dem Adressraum basiert, der dem GatewaySubnet virtuellen Netzwerk zugeordnet ist.
ClientAddressPool Diese IP-Adresse wird für den Adresspool in der P2S-Konfiguration im Azure-Portal verwendet.
PublicCertData Öffentliche Zertifikatdaten werden vom VPN-Gateway verwendet, um P2S-Clients zu authentifizieren, die eine Verbindung damit herstellen. Um die Zertifikatdaten abzurufen, installieren Sie das Stammzertifikat. Stellen Sie sicher, dass das Zertifikat base-64 mit einer .cer Erweiterung codiert ist. Öffnen Sie dieses Zertifikat, und kopieren Sie den Text im Zertifikat zwischen ==BEGIN CERTIFICATE== und ==END CERTIFICATE== in einer fortlaufenden Zeile.

Führen Sie das Skript aus.

Führen Sie die folgenden Schritte aus, um das geänderte parameters-p2s.json Skript zu verwenden und das Skript zum Erstellen von Azure-Ressourcen auszuführen.

  1. Führen Sie PowerShell aus. Wechseln Sie zu dem Verzeichnis, in dem sich das Skript befindet.

  2. Führen Sie das Skript aus.

    .\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>"

    Hinweis

    In dieser Version funktioniert das Skript nur im Standort der östlichen USA.

    Sie müssen beim Ausführen des Skripts die folgenden Informationen eingeben:

    Parameter Description
    Standort Dies ist die Region, in der die Azure-Ressourcen erstellt werden müssen.
    AzureAppRuleFilePath Dies ist der Dateipfad für appRule.json.
    AzureIPRangesFilePath Dies ist die Json-Datei des Diensttags, die Sie im vorherigen Schritt heruntergeladen haben.
    Ressourcengruppenname Dies ist der Name der Ressourcengruppe, unter der alle Azure-Ressourcen erstellt werden.
    AzureDeploymentName Dies ist der Name für Ihre Azure-Bereitstellung.
    Netzwerkregel-Sammlungsname Dies ist der Name für die Sammlung aller Netzwerkregeln, die erstellt und ihrer Azure-Firewall hinzugefügt werden.
    Priority Dies ist die Priorität, die allen erstellten Netzwerk- und Anwendungsregeln zugewiesen ist.
    AppRuleCollectionName Dies ist der Name für die Sammlung aller Anwendungsregeln, die erstellt und Ihrer Azure-Firewall hinzugefügt werden.

    Unten wird eine Beispielausgabe angezeigt.

    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
    

    Von Bedeutung

    • Das Skript wird in ungefähr 90 Minuten ausgeführt. Stellen Sie sicher, dass Sie sich direkt vor dem Start des Skripts bei Ihrem Netzwerk anmelden.
    • Wenn aus irgendeinem Grund eine fehlgeschlagene Sitzung mit dem Skript vorhanden ist, müssen Sie die Ressourcengruppe löschen, um alle darin erstellten Ressourcen zu löschen.

    Nach Abschluss des Skripts wird ein Bereitstellungsprotokoll im selben Ordner generiert, in dem sich das Skript befindet.

Überprüfen der Azure-Ressourcen

Nachdem Sie das Skript erfolgreich ausgeführt haben, überprüfen Sie, ob alle Ressourcen in Azure erstellt wurden. Wechseln Sie zu der von Ihnen erstellten Ressourcengruppe. Die folgenden Ressourcen sollten angezeigt werden:

Azure-Ressourcen

Herunterladen eines Telefonbuchs für VPN-Profil

In diesem Schritt laden Sie das VPN-Profil für Ihr Gerät herunter.

  1. Wechseln Sie im Azure-Portal zur Ressourcengruppe, und wählen Sie dann das virtuelle Netzwerkgateway aus, das Sie im vorherigen Schritt erstellt haben.

    Azure Virtual Network Gateway

  2. Wechseln Sie zu Einstellungen > Punkt-zu-Standort-Konfiguration. Wählen Sie "VPN-Client herunterladen" aus.

    Aktivieren der P2S-Konfiguration 1

  3. Speichern Sie das gezippte Profil, und extrahieren Sie es auf Ihrem Windows-Client.

    Aktivieren der P2S-Konfiguration 2

  4. Wechseln Sie zum Ordner "WindowsAmd64 ", und extrahieren Sie dann folgendes .exe: VpnClientSetupAmd64.exe.

    Aktivieren der P2S-Konfiguration 3

  5. Erstellen Sie einen temporären Pfad. Beispiel:

    C:\NewTemp\vnet\tmp

  6. Führen Sie PowerShell aus, und wechseln Sie zu dem Verzeichnis, in dem sich die .exe Datei befindet. Geben Sie Folgendes ein, um den .exeBefehl auszuführen:

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

  7. Der temporäre Pfad enthält neue Dateien. Hier ist eine Beispielausgabe:

    
    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. Die PBK-Datei ist das Telefonbuch für das VPN-Profil. Sie verwenden dies in der lokalen Benutzeroberfläche.

VPN-Konfiguration auf dem Gerät

Führen Sie die folgenden Schritte auf der lokalen Benutzeroberfläche Ihres Azure Stack Edge-Geräts aus.

  1. Wechseln Sie auf der lokalen Benutzeroberfläche zur VPN-Seite . Wählen Sie unter VPN-Status "Konfigurieren" aus.

    Konfigurieren von VPN 1

  2. Im Bereich "VPN konfigurieren":

    1. Zeigen Sie in der Datei "Telefonbuch hochladen" auf die PBK-Datei, die Sie im vorherigen Schritt erstellt haben.
    2. Geben Sie in der Konfigurationsdatei "Öffentliche IP-Liste hochladen" die JSON-Datei des Azure Data Center-IP-Bereichs als Eingabe an. Sie haben diese Datei in einem früheren Schritt von: heruntergeladen. https://www.microsoft.com/download/details.aspx?id=56519
    3. Wählen Sie als Region eastus und dann Übernehmen aus.

    Konfigurieren von VPN 2

  3. Geben Sie in den IP-Adressbereichen, auf die nur über VPN zugegriffen werden soll , den Vnet-IPv4-Bereich ein, den Sie für Ihr virtuelles Azure-Netzwerk ausgewählt haben.

    Konfigurieren von VPN 3

Überprüfen der Clientverbindung

  1. Wechseln Sie im Azure-Portal zum VPN-Gateway.
  2. Wechseln Sie zu Einstellungen > Punkt-zu-Standort-Konfiguration. Unter zugewiesenen IP-Adressen sollte die IP-Adresse Ihres Azure Stack Edge-Geräts angezeigt werden.

Überprüfen der Datenübertragung über VPN

Um zu bestätigen, dass das VPN funktioniert, kopieren Sie Daten in eine SMB-Freigabe. Führen Sie auf dem Azure Stack Edge-Gerät die Schritte unter Hinzufügen einer Freigabe aus.

  1. Kopieren Sie eine Datei, z. B. „\data\pictures\waterfall.jpg“, in die SMB-Freigabe, die Sie auf dem Clientsystem bereitgestellt haben.

  2. So überprüfen Sie, ob die Daten VPN durchlaufen, während die Daten kopiert werden:

    1. Wechseln Sie zum VPN-Gateway im Azure-Portal.

    2. Wechseln Sie zu Überwachungsmetriken>.

    3. Wählen Sie im rechten Bereich den Bereich als VPN-Gateway, Metrik als Gateway-P2S-Bandbreite und Aggregation als Durchschnitt.

    4. Da die Daten kopiert werden, sehen Sie eine Zunahme der Bandbreitenauslastung und wenn die Datenkopie abgeschlossen ist, wird die Bandbreitenauslastung sinken.

      Azure-VPN-Metriken

  3. Stellen Sie sicher, dass diese Datei in Ihrem Speicherkonto in der Cloud angezeigt wird.

Probleme debuggen

Verwenden Sie zum Debuggen von Problemen die folgenden Befehle:

Get-AzResourceGroupDeployment -DeploymentName $deploymentName -ResourceGroupName $ResourceGroupName

Die Beispielausgabe wird unten gezeigt:

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

Nächste Schritte

Konfigurieren Sie VPN über die lokale Benutzeroberfläche auf Ihrem Azure Stack Edge-Gerät.