Configurar uma VPN P2S (ponto a site) no Windows para uso com os Arquivos do Azure

Você pode usar uma conexão de VPN P2S (ponto a site) para montar compartilhamentos de arquivo do Azure no SMB de fora do Azure, sem precisar abrir a porta 445. Uma conexão VPN ponto a site é uma conexão VPN entre o Azure e um cliente individual. Para usar uma conexão VPN P2S com os Arquivos do Azure, você deve configurar uma conexão VPN para cada cliente que será conectado. Se muitos clientes precisarem se conectar aos seus compartilhamentos de arquivo do Azure de suas redes locais, você poderá usar uma VPN S2S (site a site) em vez de uma conexão ponto a site para cada um deles. Para saber mais, confira Configurar uma VPN site a site para usar com os Arquivos do Azure.

Recomendamos que você leia Considerações de rede para acesso direto ao compartilhamento de arquivos do Azure antes de continuar este tutorial para ver uma discussão completa a respeito das opções de rede disponíveis para os Arquivos do Azure.

O artigo detalha as etapas de configuração de uma VPN ponto a site no Windows (cliente Windows e Windows Server) para criar compartilhamentos de arquivo do Azure diretamente no local. Se você deseja encaminhar o tráfego da Sincronização de Arquivos do Azure por uma VPN, confira Definir configurações de proxy e firewall da Sincronização de Arquivos do Azure.

Aplica-se a

Tipo de compartilhamento de arquivos SMB NFS
Compartilhamentos de arquivos padrão (GPv2), LRS/ZRS Yes No
Compartilhamentos de arquivos padrão (GPv2), GRS/GZRS Yes No
Compartilhamento de arquivos premium (FileStorage), LRS/ZRS Yes No

Pré-requisitos

  • A versão mais recente do módulo do Azure PowerShell. Confira Instalar o módulo do Azure PowerShell.

  • Um compartilhamento de arquivos do Azure que você gostaria de montar no local. Os compartilhamentos de arquivo do Azure são implantados em contas de armazenamento, que são constructos de gerenciamento que representam um pool compartilhado de armazenamento no qual você pode implantar vários compartilhamentos de arquivo bem como outros recursos de armazenamento. Saiba mais sobre como implantar compartilhamentos de arquivo do Azure e contas de armazenamento em Criar um compartilhamento de arquivo do Azure.

  • Uma rede virtual com um ponto de extremidade privado para a conta de armazenamento que contém o compartilhamento de arquivos do Azure que você deseja montar no local. Para saber como criar um ponto de extremidade privado, confira Configuração de pontos de extremidades de rede do serviço Arquivos do Azure.

  • Você deve criar uma sub-rede de gateway na rede virtual. Para criar uma sub-rede de Gateway, entre no portal do Microsoft Azure, navegue até a rede virtual, selecione Configurações > Sub-redes e, em seguida, selecione + Sub-rede de Gateway. Quando você cria a sub-rede de gateway, pode especificar o número de endereços IP que contém a sub-rede. O número de endereços IP necessários depende da configuração do gateway VPN que você deseja criar. É melhor especificar /27 ou maior (/26, /25 etc.) para permitir endereços IP suficientes para alterações futuras, como a adição de um Gateway do ExpressRoute.

Coletar informações do ambiente

Antes de configurar a VPN ponto a site, você precisa coletar algumas informações sobre seu ambiente.

Para configurar uma VPN ponto a site usando o portal do Microsoft Azure, você precisará saber o nome do grupo de recursos, o nome da rede virtual, o nome da sub-rede de Gateway e o nome da conta de armazenamento.

Criar um certificado raiz para autenticação da VPN

Para que as conexões VPN dos seus computadores Windows locais sejam autenticadas para acessar sua rede virtual, é necessário criar dois certificados:

  1. Um certificado raiz, que será fornecido ao gateway da máquina virtual
  2. Um certificado do cliente, que será conectado ao certificado raiz

Você pode usar um certificado raiz gerado com uma solução da empresa ou pode gerar um certificado autoassinado. Se estiver usando uma solução empresarial, adquira o arquivo .cer para o certificado raiz com sua organização de TI.

Se não estiver usando uma solução de certificado corporativo, crie um certificado raiz autoassinado usando este script do PowerShell. Você criará o certificado do cliente após implantar o gateway de rede virtual. Se possível, deixe sua sessão do PowerShell aberta para não precisar redefinir variáveis quando você criar o certificado do cliente mais adiante neste artigo.

Importante

Execute esse script do PowerShell como administrador em um computador local que esteja executando o Windows 10/Windows Server 2016 ou posterior. Não execute o script em um Azure Cloud Shell ou VM no Azure.

$rootcertname                = 'CN=P2SRootCert'
$certLocation                = 'Cert:\CurrentUser\My'
$vpnTemp                     = 'C:\vpn-temp'
$exportedencodedrootcertpath = "$vpnTemp\P2SRootCertencoded.cer"
$exportedrootcertpath        = "$vpnTemp\P2SRootCert.cer"

if (-Not (Test-Path -Path $vpnTemp -PathType Container)) {
    New-Item -ItemType Directory -Force -Path $vpnTemp | Out-Null
}

if ($PSVersionTable.PSVersion.Major -ge 6) {
    Import-Module -Name PKI -UseWindowsPowerShell
}

$selfSignedCertParams = @{
    Type              = 'Custom'
    KeySpec           = 'Signature'
    Subject           = $rootcertname
    KeyExportPolicy   = 'Exportable'
    HashAlgorithm     = 'sha256'
    KeyLength         = '2048'
    CertStoreLocation = $certLocation
    KeyUsageProperty  = 'Sign'
    KeyUsage          = 'CertSign'
}
$rootcert = New-SelfSignedCertificate @selfSignedCertParams

Export-Certificate -Cert $rootcert -FilePath $exportedencodedrootcertpath -NoClobber | Out-Null

certutil -encode $exportedencodedrootcertpath $exportedrootcertpath | Out-Null

$rawRootCertificate = Get-Content -Path $exportedrootcertpath

$rootCertificate = ''

foreach ($line in $rawRootCertificate) { 
    if ($line -notlike '*Certificate*') { 
        $rootCertificate += $line 
    } 
}

Implantar o gateway de rede virtual

O gateway de rede virtual do Azure é o serviço ao qual os computadores Windows locais serão conectados. Se ainda não o fez, você deve criar uma sub-rede de gateway na rede virtual antes de implantar o gateway de rede virtual.

A implantação de um gateway de rede virtual requer dois componentes básicos:

  1. Um endereço IP público que identificará o gateway para seus clientes onde quer que eles estejam no mundo
  2. O certificado raiz criado na etapa anterior, que será usado para autenticar seus clientes.

Você pode usar o portal do Microsoft Azure ou o Azure PowerShell para implantar o gateway de rede virtual. A implantação pode levar até 45 minutos para ser concluída.

Para implantar um gateway de rede virtual usando o portal do Microsoft Azure, siga estas instruções.

  1. Entre no portal do Azure.

  2. Em Pesquisar recursos, serviços e documentos, digite gateways de rede virtual. Localize os gateways de Rede Virtual nos resultados da pesquisa do Marketplace e selecione-o.

  3. Selecione + Criar para criar um gateway de rede virtual.

  4. Na guia Informações básicas, preencha os valores de Detalhes do projeto e Detalhes da instância.

    Screenshot showing how to create a virtual network gateway using the Azure portal.

    • Assinatura: Selecione na lista suspensa a assinatura que deseja usar.
    • Grupo de Recursos: Essa configuração é preenchida automaticamente quando você seleciona a rede virtual nesta página.
    • Nome: nomeie o seu gateway. Dar um nome ao gateway não é igual a dar um nome a uma sub-rede de gateway. Trata-se do nome do objeto de gateway que você está criando.
    • Região: Selecione a região na qual deseja criar este recurso. A região do gateway deve ser a mesma que da rede virtual.
    • Tipo de gateway: selecione VPN. Gateways VPN usam o tipo de gateway de rede virtual do tipo VPN.
    • SKU: selecione o SKU do gateway que dá suporte aos recursos que você deseja usar na lista suspensa. Confira SKUs de Gateway. Não use a SKU Básica porque ela não dá suporte para a autenticação IKEv2.
    • Geração: selecione a geração que você quer usar. Recomendamos usar um SKU de Geração2. Para obter mais informações, confira SKUs de gateway.
    • Rede virtual: na lista suspensa, selecione a rede virtual à qual você deseja adicionar este gateway. Se não conseguir ver a rede virtual para a qual deseja criar um gateway, verifique se você selecionou a assinatura e a região corretas.
    • Sub-rede: esse campo deverá estar acinzentado e listar o nome da sub-rede de Gateway que você criou, juntamente com o intervalo de endereços IP. Se, em vez disso, você vir um campo Intervalo de endereços de sub-rede de Gateway com uma caixa de texto, é porque ainda não configurou uma sub-rede de Gateway (consulte Pré-requisitos).
  5. Especifique os valores para o Endereço IP público que é associado ao gateway de rede virtual. O endereço IP público é atribuído a esse objeto quando o gateway de rede virtual é criado. A única vez em que o endereço IP público primário muda é quando o gateway é excluído e recriado. Ele não se altera com o redimensionamento, a redefinição ou outras manutenções/atualizações internas.

    Screenshot showing how to specify the public IP address for a virtual network gateway using the Azure portal.

    • Endereço IP público: Deixe criar novo selecionado.
    • Nome do endereço IP público: Na caixa de texto, digite um nome para a instância do endereço IP público.
    • SKU de endereço IP público: A configuração é selecionada automaticamente.
    • Atribuição: A atribuição normalmente é selecionada automaticamente e pode ser dinâmica ou estática.
    • Habilitar o modo ativo-ativo: selecione Desabilitado. Habilite esta configuração somente se você estiver criando uma configuração de gateway ativo-ativo.
    • Configurar BGP: selecione Desabilitado, a menos que sua configuração exija especificamente essa configuração. Se você exigir essa configuração, o ASN padrão será 65515, embora esse valor possa ser alterado.
  6. Selecione Examinar + criar para executar a validação. Uma vez aprovada a validação, selecione Criar para implantar o gateway de rede virtual. A implantação pode levar até 45 minutos para ser concluída.

  7. Após a conclusão da implantação, selecione Ir para o recurso.

  8. No painel esquerdo, selecione Configurações >. Configuração ponto a site e, em seguida, selecione Configurar agora. Você deverá ver a página de configuração Ponto a site.

    Screenshot showing how to configure a point-to-site VPN using the Azure portal.

    • Pool de endereços: adicione o intervalo de endereços IP privados que você deseja usar. Os clientes VPN recebem dinamicamente um endereço IP do intervalo que você especificar. A máscara de sub-rede mínima é de 29 bits para a configuração ativa/passiva e de 28 bits para configuração ativa/ativa.
    • Tipo de túnel: especifique o tipo de túnel que você deseja usar. Os computadores que se conectarem por meio do cliente VPN nativo do Windows tentarão primeiro o IKEv2. Se isso não se conectar, eles recorrerão ao SSTP (se você selecionar IKEv2 e SSTP na lista suspensa). Se você selecionar o tipo de túnel OpenVPN, você pode se conectar usando um Cliente OpenVPN ou o Cliente VPN do Azure.
    • Tipo de autenticação: especifique o tipo de autenticação que você deseja usar (neste caso, escolha o certificado do Azure).
    • Nome do certificado raiz: o nome do arquivo do certificado raiz (arquivo .cer).
    • Dados do certificado público: abra o certificado raiz com o Bloco de Notas e copie/cole os dados do certificado público nesse campo de texto. Se você usou o script do PowerShell neste artigo para gerar um certificado raiz autoassinado, ele estará localizado em C:\vpn-temp. Certifique-se de colar apenas o texto que está entre -----BEGIN CERTIFICATE----- e -----END CERTIFICATE-----. Não inclua nenhum espaço ou caractere adicional.

    Observação

    Se não vir o tipo de túnel ou o tipo de autenticação, seu gateway estará usando a SKU Básica. A SKU básica não dá suporte para a autenticação IKEv2. Se desejar usar o IKEv2, você precisará excluir e recriar o gateway usando um SKU de gateway diferente.

  9. Selecione Salvar na parte superior da página para salvar todas as configurações e carregar as informações da chave pública do certificado raiz no Azure.

Criar o certificado do cliente

Cada computador cliente que você conecta a uma rede virtual com uma conexão ponto a site deve ter um certificado do cliente instalado. Gere o certificado do cliente a partir do certificado raiz e o instale em cada computador cliente. Se você não instalar um certificado de cliente válido, a autenticação falhará quando o cliente tentar conectar-se. Você pode criar um certificado de cliente a partir de um certificado raiz gerado com uma solução empresarial, ou pode criar um certificado de cliente a partir de um certificado raiz autoassinado.

Criar o certificado de cliente usando uma solução corporativa

Se você estiver usando uma solução de certificado empresarial, gere um certificado de cliente com o formato de valor de nome comum name@yourdomain.com. Use esse formato, em vez do formato nome do domínio\nomedeusuário. Verifique se o certificado do cliente é baseado em um modelo de certificado de usuário que tenha Autenticação de Cliente listada como o primeiro item na lista de usuários. Verifique o certificado clicando duas vezes nele e exibindo Uso Avançado de Chave na guia Detalhes.

Criar certificado do cliente a partir de um certificado raiz autoassinado

Se não estiver usando uma solução de certificado corporativo, poderá usar o PowerShell para criar um certificado de cliente com o URI do gateway de rede virtual. Esse certificado será conectado com o certificado raiz criado anteriormente. Ao gerar um certificado do cliente de um certificado raiz autoassinado, ele é instalado automaticamente no computador que você usou para gerá-lo.

Se desejar instalar um certificado de cliente em outro computador cliente, exporte o certificado como um arquivo .pfx, juntamente com toda a cadeia de certificados. Essa ação criará um arquivo .pfx que contém as informações do certificado raiz necessárias para o cliente autenticar. Para exportar o certificado raiz autoassinado como um .pfx, selecione o certificado raiz e use as mesmas etapas descritas em Exportar o certificado do cliente.

Identificar o certificado raiz autoassinado

Se estiver usando a mesma sessão do PowerShell que usou para criar o certificado raiz autoassinado, poderá ignorar Gerar um certificado de cliente.

Se não for o caso, execute as etapas a seguir para identificar o certificado raiz autoassinado que está instalado no seu computador.

  1. Obtenha uma lista dos certificados que estão instalados no seu computador.

    Get-ChildItem -Path 'Cert:\CurrentUser\My'
    
  2. Localize o nome da entidade na lista retornada e, em seguida, copie a impressão digital que está localizada ao lado dele em um arquivo de texto. No exemplo a seguir, há dois certificados. O nome CN é o nome do certificado raiz autoassinado do qual você deseja gerar um certificado filho. Nesse caso, ele é chamado de P2SRootCert.

    Thumbprint                                Subject
    ----------                                -------
    AED812AD883826FF76B4D1D5A77B3C08EFA79F3F  CN=P2SChildCert4
    7181AA8C1B4D34EEDB2F3D3BEC5839F3FE52D655  CN=P2SRootCert
    
  3. Declare uma variável para o certificado raiz usando a impressão digital da etapa anterior. Substitua a IMPRESSÃO DIGITAL pela impressão digital do certificado raiz a partir do qual você deseja gerar um certificado de cliente.

    $rootcert = Get-ChildItem -Path 'Cert:\CurrentUser\My\<THUMBPRINT>'
    

    Por exemplo, usando a impressão digital de P2SRootCert na etapa anterior, o comando tem a seguinte aparência:

    $rootcert = Get-ChildItem -Path 'Cert:\CurrentUser\My\7181AA8C1B4D34EEDB2F3D3BEC5839F3FE52D655'
    

Gerar um certificado do cliente

Use o cmdlet New-AzVpnClientConfiguration do PowerShell para gerar um certificado do cliente. Se não estiver usando a mesma sessão do PowerShell que usou para criar o certificado raiz autoassinado, será necessário identificar o certificado raiz autoassinado conforme descrito na seção anterior. Antes de executar o script, substitua <resource-group-name> pelo nome de seu grupo de recursos e <vpn-gateway-name> pelo nome do gateway de rede virtual que você acabou de implantar.

Importante

Execute este script do PowerShell como administrador a partir do computador Windows local que deseja conectar ao compartilhamento de arquivos do Azure. O computador deve estar executando o Windows 10/Windows Server 2016 ou posterior. Não execute o script a partir de um Cloud Shell no Azure. Verifique se você entrou na sua conta do Azure antes de executar o script (Connect-AzAccount).

$clientcertpassword = '<enter-your-password>'
$resourceGroupName  = '<resource-group-name>'
$vpnName            = '<vpn-gateway-name>'
$vpnTemp            = 'C:\vpn-temp'
$certLocation       = 'Cert:\CurrentUser\My'

$vpnClientConfigParams = @{
    ResourceGroupName    = $resourceGroupName
    Name                 = $vpnName
    AuthenticationMethod = 'EAPTLS'
}
$vpnClientConfiguration = New-AzVpnClientConfiguration @vpnClientConfigParams

$webRequestParams = @{
    Uri = $vpnClientConfiguration.VpnProfileSASUrl
    OutFile = "$vpnTemp\vpnclientconfiguration.zip"
}
Invoke-WebRequest @webRequestParams

$expandArchiveParams = @{
    Path            = "$vpnTemp\vpnclientconfiguration.zip"
    DestinationPath = "$vpnTemp\vpnclientconfiguration"
}
Expand-Archive @expandArchiveParams

$vpnGeneric = "$vpnTemp\vpnclientconfiguration\Generic"
$vpnProfile = ([xml](Get-Content -Path "$vpnGeneric\VpnSettings.xml")).VpnProfile

$exportedclientcertpath = "$vpnTemp\P2SClientCert.pfx"
$clientcertname         = "CN=$($vpnProfile.VpnServer)"

$selfSignedCertParams = @{
    Type              = 'Custom'
    DnsName           = $vpnProfile.VpnServer
    KeySpec           = 'Signature'
    Subject           = $clientcertname
    KeyExportPolicy   = 'Exportable'
    HashAlgorithm     = 'sha256'
    KeyLength         = 2048
    CertStoreLocation = $certLocation
    Signer            = $rootcert
    TextExtension     = @('2.5.29.37={text}1.3.6.1.5.5.7.3.2')
}
$clientcert = New-SelfSignedCertificate @selfSignedCertParams

$mypwd = ConvertTo-SecureString -String $clientcertpassword -Force -AsPlainText

Export-PfxCertificate -FilePath $exportedclientcertpath -Password $mypwd -Cert $clientcert |
    Out-Null

Configurar o cliente VPN

O gateway de rede virtual do Azure criará um pacote que poderá ser baixado contendo os arquivos de configuração necessários para iniciar a conexão VPN em seu computador Windows local. O pacote de configuração contém configurações específicas para o gateway de VPN que você criou. Se você fizer alterações no gateway, como alterar um tipo de túnel, certificado ou tipo de autenticação, será necessário gerar outro pacote de configuração de perfil de cliente VPN e instalá-lo em cada cliente. Caso contrário, seus clientes VPN podem não conseguir se conectar.

Você configurará a conexão VPN usando o recurso VPN Always On apresentado no Windows 10/Windows Server 2016. Este pacote também contém executáveis que configurarão o cliente VPN do Windows herdado, caso seja desejado. Este guia usa a VPN Always On em vez do cliente VPN do Windows herdado, pois o cliente VPN Always On permite que você se conecte/desconecte da VPN do Azure sem ter permissões de administrador nos computadores.

Instalar um certificado cliente

Para instalar o certificado de cliente necessário para a autenticação em relação ao gateway de rede virtual, siga estas etapas no computador cliente.

  1. Depois que o certificado do cliente for exportado, localize e copie o arquivo .pfx para o computador cliente.
  2. No computador cliente, clique duas vezes no arquivo .pfx para instalá-lo. Deixe o Local do Repositório como Usuário Atual e selecione Avançar.
  3. Na página Arquivo a importar, não faça nenhuma alteração. Selecione Avançar.
  4. Na página Proteção da chave privada, insira a senha do certificado ou verifique se a entidade de segurança está correta e selecione Avançar.
  5. Na página Repositório de Certificados, deixe a localização padrão e selecione Avançar.
  6. Selecione Concluir. No Aviso de Segurança da instalação do certificado, selecione Sim. Você pode selecionar 'Sim' confortavelmente para este aviso de segurança porque gerou o certificado.
  7. O certificado foi importado com êxito.

Instalar o cliente VPN

Esta seção ajuda você a configurar o cliente VPN nativo que faz parte do seu sistema operacional Windows para conectar-se à sua rede virtual (IKEv2 e SSTP). Essa configuração não requer software cliente adicional.

Exibir arquivos de configuração

No computador cliente, navegue até C:\vpn-temp e abra a pasta vpnclientconfiguration para exibir as seguintes subpastas:

  • WindowsAmd64 e WindowsX86, que contêm os pacotes dos instaladores do Windows de 64 bits e 32 bits, respectivamente. O pacote do instalador de WindowsAmd64 serve para todos os clientes do Windows de 64 bits, não apenas ao Amd.
  • Generic, que contém informações gerais, usadas para criar sua própria configuração de cliente VPN. A pasta Genérico será fornecida se IKEv2 ou SSTP+IKEv2 tiver sido configurado no gateway. Se apenas o SSTP estiver configurado, a pasta Genérica não estará presente.

Configurar o perfil de cliente VPN

Você pode usar o mesmo pacote de configuração de cliente VPN em cada computador cliente do Windows, desde que a versão corresponda à arquitetura do cliente.

Observação

Você deve ter direitos de Administrador no computador cliente Windows a partir do qual está executando a conexão para executar o pacote do instalador.

  1. Selecione os arquivos de configuração de cliente VPN que correspondem à arquitetura do computador com Windows. Para uma arquitetura de processador de 64 bits, escolha o pacote do instalador VpnClientSetupAmd64. Para uma arquitetura de processador de 32 bits, escolha o pacote do instalador VpnClientSetupX86.

  2. Clique duas vezes no pacote para instalá-lo. Se vir um pop-up do SmartScreen, selecione Mais informações e Executar mesmo assim.

  3. Conectar à VPN. Acesse Configurações de VPN e localize as conexões VPN que você criou. Ela têm o mesmo nome da sua rede virtual. Selecione Conectar. Pode aparecer uma mensagem pop-up. Selecione em Continuar para usar os privilégios elevados.

  4. Na página de Status da conexão, selecione Conectar para iniciar a conexão. Se você vir uma tela Selecionar Certificado, verifique se o certificado de cliente mostrado é o que você deseja usar para se conectar. Se ela não ocorrer, use a seta suspensa para selecionar o certificado correto e selecione OK.

Montar o compartilhamento de arquivo do Azure

Agora que você configurou sua VPN ponto a site, poderá usá-la para montar o compartilhamento de arquivos do Azure em um computador local.

Para montar o compartilhamento de arquivos usando sua chave da conta de armazenamento, abra um prompt de comando do Windows e execute o seguinte comando. Substitua <YourStorageAccountName>, <FileShareName> e <YourStorageAccountKey> por valores próprios. Se Z: já estiver em uso, substitua-o por uma letra de unidade disponível. É possível encontrar a chave da conta de armazenamento no portal do Microsoft Azure navegando até a conta de armazenamento e selecionando Segurança + sistema de rede>Chaves de acesso.

net use Z: \\<YourStorageAccountName>.file.core.windows.net\<FileShareName> /user:localhost\<YourStorageAccountName> <YourStorageAccountKey>

Girar Certificado Raiz VPN

Se um certificado raiz precisar ser girado devido à expiração ou novos requisitos, você poderá adicionar um novo certificado raiz ao gateway de rede virtual existente sem reimplantar o gateway de rede virtual. Depois de adicionar o certificado raiz usando o script a seguir, será necessário recriar o certificado de cliente VPN.

Substitua <resource-group-name>, <desired-vpn-name-here>, e <new-root-cert-name> por seus próprios valores e, em seguida, execute o script.

#Creating the new Root Certificate
$ResourceGroupName           = '<resource-group-name>'
$vpnName                     = '<desired-vpn-name-here>'
$NewRootCertName             = '<new-root-cert-name>'
$rootcertname                = "CN=$NewRootCertName"
$certLocation                = 'Cert:\CurrentUser\My'
$date                        = Get-Date -Format 'MM_yyyy'
$vpnTemp                     = "C:\vpn-temp_$date"
$exportedencodedrootcertpath = "$vpnTemp\P2SRootCertencoded.cer"
$exportedrootcertpath        = "$vpnTemp\P2SRootCert.cer"

if (-Not (Test-Path -Path $vpnTemp -PathType Container)) {
    New-Item -ItemType Directory -Force -Path $vpnTemp | Out-Null
}

$selfSignedCertParams = @{
    Type              = 'Custom'
    KeySpec           = 'Signature'
    Subject           = $rootcertname
    KeyExportPolicy   = 'Exportable'
    HashAlgorithm     = 'sha256'
    KeyLength         = 2048
    CertStoreLocation = $certLocation
    KeyUsageProperty  = 'Sign'
    KeyUsage          = 'CertSign'
}
$rootcert = New-SelfSignedCertificate @selfSignedCertParams

$exportCertParams = @{
    Cert      = $rootcert
    FilePath  = $exportedencodedrootcertpath
    NoClobber = $true
}
Export-Certificate @exportCertParams | Out-Null

certutil -encode $exportedencodedrootcertpath $exportedrootcertpath | Out-Null

$rawRootCertificate = Get-Content -Path $exportedrootcertpath

$rootCertificate = ''

foreach($line in $rawRootCertificate) { 
    if ($line -notlike '*Certificate*') { 
        $rootCertificate += $line 
    } 
}

#Fetching gateway details and adding the newly created Root Certificate.
$gateway = Get-AzVirtualNetworkGateway -Name $vpnName -ResourceGroupName $ResourceGroupName

$vpnClientRootCertParams = @{
    PublicCertData               = $rootCertificate
    ResourceGroupName            = $ResourceGroupName
    VirtualNetworkGatewayName    = $gateway
    VpnClientRootCertificateName = $NewRootCertName
}
Add-AzVpnClientRootCertificate @vpnClientRootCertParams

Confira também