Share via


Configurar a VPN no seu dispositivo Azure Stack Edge Mini R por meio do Azure PowerShell

A opção VPN fornece uma segunda camada de criptografia para os dados em movimento pelo TLS do seu dispositivo Azure Stack Edge Mini R ou Azure Stack Edge Pro R para o Azure. Você pode configurar a VPN no seu dispositivo Azure Stack Edge Mini R via portal do Azure ou Azure PowerShell.

Este artigo descreve as etapas necessárias para configurar a VPN ponto a site (P2S) no seu dispositivo Azure Stack Edge Mini R usando um script do Azure PowerShell para criar a configuração na nuvem. A configuração no dispositivo Azure Stack Edge é feita por meio da interface do usuário local.

Sobre a configuração da VPN

Uma conexão de gateway de VPN Ponto a Site (P2S) permite que você crie uma conexão segura para sua rede virtual a partir de um computador cliente individual ou seu dispositivo Azure Stack Edge Mini R. Você inicia a conexão P2S do computador cliente ou do dispositivo. A conexão P2S, nesse caso, usa VPN IKEv2, uma solução de VPN IPsec baseada em padrões.

O fluxo de trabalho típico inclui as seguintes etapas:

  1. Configurar os pré-requisitos.
  2. Configure os recursos necessários no Azure.
    1. Criar e configurar uma rede virtual e sub-redes necessárias.
    2. Criar e configurar um gateway de VPN do Azure (gateway de rede virtual).
    3. Configurar o Firewall do Azure e adicionar as regras de rede e de aplicativo.
    4. Criar uma Tabela de Roteamento do Azure e adicionar rotas.
    5. Habilitar o ponto a site no gateway de VPN.
      1. Adicione o pool de endereços de cliente.
      2. Configurar o tipo de túnel.
      3. Configurar o tipo de autenticação.
      4. Criar certificado.
      5. Carregar certificado.
    6. Baixar o catálogo telefônico.
  3. Configure a VPN na interface do usuário da Web local do dispositivo.
    1. Providenciar o catálogo telefônico.
    2. Providenciar o arquivo de marcas de serviço (json).

As etapas detalhadas estão nas próximas seções.

Configurar os pré-requisitos

  • Você deve ter acesso a um dispositivo Azure Stack Edge Mini R instalado segundo as instruções contidas em Instalar o dispositivo Azure Stack Edge Mini R. Este dispositivo estará estabelecendo uma conexão P2S com o Azure.

  • Você deve ter acesso a uma assinatura válida do Azure e habilitada para o serviço Azure Stack Edge no Azure. Use essa assinatura para criar um recurso correspondente no Azure para gerenciar seu dispositivo Azure Stack Edge Mini R.

  • Você tem acesso a um cliente Windows que será usado para acessar o dispositivo Azure Stack Edge Mini R. Você usará esse cliente para criar programaticamente a configuração na nuvem.

    1. Para instalar a versão necessária do PowerShell no seu cliente Windows, execute os seguintes comandos:

      Install-Module -Name Az -AllowClobber -Scope CurrentUser 
      Import-Module Az.Accounts
      
    2. Para se conectar à sua conta e à assinatura do Azure, execute os seguintes comandos:

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

      Forneça o nome da assinatura do Azure que você está usando com seu dispositivo Azure Stack Edge Mini R para configurar a VPN.

    3. Baixe o script necessário para criar a configuração na nuvem. O script vai:

      • Criar uma rede Virtual do Azure e as seguintes sub-redes: GatewaySubnete AzureFirewallSubnet.
      • Criar e configurar um gateway de VPN do Azure.
      • Criar e configurar um gateway de rede local do Azure.
      • Criar e configurar uma conexão VPN do Azure entre os gateways de VPN do Azure e de rede local.
      • Criar um Firewall do Azure e adicionar regras de rede e de aplicativo.
      • Criar e adicionar rotas a uma tabela de Roteamento do Azure.
    4. Crie o grupo de recursos no portal do Azure no qual você deseja que os recursos do Azure sejam criados. Vá para a lista de serviços em portal do Azure, selecione Grupo de recursos e, em seguida, selecione + Adicionar. Forneça as informações de assinatura e o nome do seu grupo de recursos e, em seguida, selecione Criar. Se você acessar esse grupo de recursos, ele não deverá ter nenhum recurso nele no momento.

      Azure resource group

    5. Você precisará ter um certificado codificado base 64 no .cer formato para o dispositivo Azure Stack Edge Mini R. Esse certificado deve ser carregado em seu dispositivo Azure Stack Edge como pfx com uma chave privada. Esse certificado também precisa ser instalado na raiz confiável do armazenamento no cliente que está tentando estabelecer a conexão P2S.

Usar o script

Primeiro, modifique o arquivo parameters-p2s.json para inserir seus parâmetros. Em seguida, execute o script usando o arquivo json modificado.

Cada uma dessas etapas será discutida nas seções a seguir.

Baixar arquivo de marcas de serviço

Talvez você já tenha um arquivo ServiceTags.json na pasta em que baixou o script. Se não tiver, pode baixar o arquivo de marca de serviço.

Baixe as marcas de serviço do Azure para seu cliente local e salve como um arquivo json na mesma pasta que contém os scripts: https://www.microsoft.com/download/details.aspx?id=56519.

Este arquivo é carregado na IU da web local em uma etapa posterior.

Modificar o arquivo de parâmetros

A primeira etapa é modificar o arquivo parameters-p2s.json e salvar as alterações.

Para os recursos do Azure criados por você, forneça os seguintes nomes:

Nome do parâmetro Descrição
virtualNetworks_vnet_name Nome da Rede Virtual do Azure
azureFirewalls_firewall_name Nome do Firewall do Azure
routeTables_routetable_name Nome da tabela de Rotas do Azure
publicIPAddresses_VNGW_public_ip_name Endereço IP público do seu gateway de rede Virtual
virtualNetworkGateways_VNGW_name Nome do gateway de VPN do Azure (gateway de rede virtual)
publicIPAddresses_firewall_public_ip_name Nome do endereço IP público do Firewall do Azure
local É a região na qual você deseja criar sua rede virtual. Selecione a mesma região associada ao seu dispositivo.
RouteTables_routetable_onprem_name Esse é o nome da tabela de rotas adicional para ajudar o firewall a rotear pacotes de volta para o dispositivo Azure Stack Edge. O script cria duas rotas adicionais e associa Default e FirewallSubnet a essa tabela de rotas.

Forneça os endereços IP e espaços de endereço a seguir para os recursos do Azure criados, inclusive a rede virtual e as sub-redes associadas (padrão, firewall, GatewaySubnet).

Nome do parâmetro Descrição
VnetIPv4AddressSpace É o espaço de endereço associado à sua rede virtual. Forneça o intervalo de IP da Vnet como um intervalo de IP privado (https://en.wikipedia.org/wiki/Private_network#Private_IPv4_addresses).
DefaultSubnetIPv4AddressSpace É o espaço de endereço associado à sub-rede Default para sua rede virtual.
FirewallSubnetIPv4AddressSpace É o espaço de endereço associado à sub-rede Firewall para sua rede virtual.
GatewaySubnetIPv4AddressSpace É o espaço de endereço associado à GatewaySubnet para sua rede virtual.
GatewaySubnetIPv4bgpPeeringAddress É o endereço IP reservado para comunicação BGP e baseia-se no espaço de endereço associado à GatewaySubnet para sua rede virtual.
ClientAddressPool Esse endereço IP é usado para o pool de endereços na configuração P2S no portal do Azure.
PublicCertData Os dados do certificado público são usados pelo gateway de VPN para autenticar clientes P2S conectados a ele. Para obter os dados do certificado, instale o certificado raiz. Verifique se o certificado é codificado em base-64 com uma extensão. cer. Abra esse certificado e copie o texto no certificado entre = = BEGIN CERTIFICATE = = e = = END CERTIFICATE = = em uma linha contínua.

Executar o script

Siga estas etapas para usar o parameters-p2s.json modificado e executar o script para criar recursos do Azure.

  1. Execute o PowerShell. Mude para o diretório onde o script está localizado.

  2. Execute o script.

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

    Observação

    Nesta versão, o script funciona apenas no local leste dos EUA.

    Você precisará inserir as seguintes informações ao executar o script:

    Parâmetro Descrição
    Location Esta é a região em que os recursos do Azure devem ser criados.
    AzureAppRuleFilePath Este é o caminho do arquivo para appRule.json.
    AzureIPRangesFilePath Esse é o arquivo json de marca de serviço que você baixou na etapa anterior.
    ResourceGroupName Esse é o nome do grupo de recursos no qual todos os recursos do Azure são criados.
    AzureDeploymentName Este é o nome da sua implantação do Azure.
    NetworkRuleCollectionName Este é o nome da coleção de todas as regras de rede que são criadas e adicionadas ao seu firewall do Azure.
    Prioridade Essa é a prioridade atribuída a todas as regras de rede e de aplicativo que são criadas.
    AppRuleCollectionName Este é o nome da coleção de todas as regras de aplicativo que são criadas e adicionadas ao seu firewall do Azure.

    Um exemplo de saída é mostrado abaixo.

    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
    

    Importante

    • A execução do script leva aproximadamente 90 minutos. Certifique-se de entrar em sua rede diretamente antes que o script seja iniciado.
    • Se por algum motivo houver uma sessão com falha com o script, certifique-se de excluir o grupo de recursos para excluir todos os recursos criados nele.

    Após a conclusão do script, é gerado um log de implantação na mesma pasta em que o script reside.

Verificar os recursos do Azure

Após executar o script com êxito, verifique se todos os recursos foram criados no Azure. Vá para o grupo de recursos criado. Você deverá ver os seguintes recursos:

Azure resources

Baixe o catálogo telefônico para o perfil VPN

Nesta etapa, você baixará o perfil de VPN para seu dispositivo.

  1. Na portal do Azure, vá para o grupo de recursos e selecione o gateway de rede virtual que você criou na etapa anterior.

    Azure virtual network gateway

  2. Vá para Configurações > Configuração ponto a site. Selecione Baixar cliente VPN.

    Enable P2S configuration 1

  3. Salve o perfil compactado e extraia em seu cliente Windows.

    Enable P2S configuration 2

  4. Vá para a pasta WindowsAmd64 e, em seguida, extraia o .exe: VpnClientSetupAmd64.exe.

    Enable P2S configuration 3

  5. Crie uma caminho temporário. Por exemplo:

    C:\NewTemp\vnet\tmp

  6. Execute o PowerShell e vá para o diretório em que o .exe está localizado. Para executar o .exe, digite:

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

  7. O caminho temporário terá novos arquivos. Aqui está uma amostra de saída:

    
    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. O arquivo .pbk é o catálogo telefônico do perfil VPN. Você usará isso na interface de usuário local.

Configuração da VPN no dispositivo

Siga essas etapas na interface de usuário local de seu dispositivo Azure Stack Edge.

  1. Na interface de usuário local, vá para a página VPN. Em estado da VPN, selecione Configurar.

    Configure VPN 1

  2. Na folha Configurar VPN:

    1. No arquivo Carregar catálogo telefônico, aponte para o arquivo. pbk que você criou na etapa anterior.
    2. No arquivo de configuração Carregar lista de IPS públicos, forneça o arquivo JSON do intervalo de IP do Data Center do Azure como entrada. Você baixou esse arquivo em uma etapa anterior de: https://www.microsoft.com/download/details.aspx?id=56519.
    3. Selecione eastus como a região e selecione Aplicar.

    Configure VPN 2

  3. Na seção Intervalos de endereços IP a serem acessados usando somente VPN, insira o intervalo IPv4 da VNet que você escolheu para sua rede virtual do Azure.

    Configure VPN 3

Verifique a conexão do cliente

  1. Navegue até o gateway de VPN no portal do Azure.
  2. Vá para Configurações > Configuração ponto a site. Em endereços IP alocados, o endereço IP do seu dispositivo Azure Stack Edge deve aparecer.

Validar a transferência de dados pela VPN

Para confirmar se a VPN está funcionando, copie os dados para um compartilhamento SMB. Siga as etapas descritas em Adicionar um compartilhamento no seu dispositivo Azure Stack Edge.

  1. Copie um arquivo, por exemplo \data\pictures\waterfall.jpg, para o compartilhamento SMB que você montou no sistema cliente.

  2. Para validar que os dados estão passando por VPN, enquanto os dados estão sendo copiados:

    1. Navegue até o gateway de VPN no portal do Azure.

    2. Vá para Monitoramento > Métricas.

    3. No painel direito, escolha o escopo como seu gateway de VPN, métrica como largura de banda P2S gateway e agregação como Méd.

    4. À medida que os dados estão sendo copiados, você verá um aumento na utilização da largura de banda e, quando a cópia de dados for concluída, a utilização da largura de banda será descartada.

      Azure vpn metrics

  3. Verifique se esse arquivo aparece na sua conta de armazenamento na nuvem.

Problemas de depuração

Para depurar problemas, use os seguintes comandos:

Get-AzResourceGroupDeployment -DeploymentName $deploymentName -ResourceGroupName $ResourceGroupName

O exemplo de saída é mostrado abaixo:

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

Próximas etapas

Configurar a VPN por meio da interface do usuário local no dispositivo Azure Stack Edge.