Configurer les paramètres du serveur pour l’authentification par certificat VPN P2S - PowerShell

Cet article vous aide à configurer un VPN point à site (P2S) pour connecter en toute sécurité des clients individuels exécutant Windows, Linux ou macOS à un réseau virtuel Azure (VNet). Les connexions VPN P2S sont utiles lorsque vous souhaitez vous connecter à votre réseau virtuel à distance, par exemple quand vous télétravaillez à domicile ou que vous êtes en conférence.

La connexion P2S est une solution alternative au VPN de site à site lorsque seul un nombre restreint de clients doivent se connecter à un réseau virtuel. Les connexions de ce type ne nécessitent pas de périphérique VPN ou d’adresse IP publique. La connexion P2S crée la connexion VPN via SSTP (Secure Socket Tunneling Protocol) ou IKEv2.

Diagramme d’une connexion de point à site.

Pour plus d’informations sur le VPN P2S, voir À propos du VPN P2S. Pour créer cette configuration à l’aide du portail Azure, consultez Configurer un VPN point à site à l’aide du portail Azure.

Les connexions d’authentification par certificat Azure P2S utilisent les éléments suivants, que vous pouvez configurer dans cet exercice :

  • Une passerelle VPN RouteBased.
  • La clé publique (fichier .cer) d’un certificat racine, chargée sur Azure. Une fois le certificat chargé, il est considéré comme un certificat approuvé et est utilisé pour l’authentification.
  • Un certificat client généré à partir du certificat racine. Le certificat client installé sur chaque ordinateur client qui se connecte au réseau virtuel. Ce certificat est utilisé pour l’authentification du client.
  • Fichiers de configuration de client VPN. Le client VPN est configuré à l’aide des fichiers config du client VPN. Ces fichiers contiennent les informations nécessaires permettant au client de se connecter au réseau virtuel. Chaque client qui se connecte doit être configuré à l’aide des paramètres dans les fichiers de configuration.

Prérequis

Assurez-vous de disposer d’un abonnement Azure. Si vous ne disposez pas déjà d’un abonnement Azure, vous pouvez activer vos avantages abonnés MSDN ou créer un compte gratuit.

Azure PowerShell

Vous pouvez utiliser Azure Cloud Shell ou exécuter PowerShell localement. Pour plus d’informations, consultez Installer et configurer Azure PowerShell.

  • Vous pouvez utiliser Azure Cloud Shell dans bon nombre des étapes de cet article. Toutefois, vous ne pouvez pas utiliser Cloud Shell pour générer des certificats. Par ailleurs, pour charger la clé publique du certificat racine, vous devez utiliser Azure PowerShell localement ou le portail Azure.

  • Peuvent s’afficher des alertes comme « The output object type of this cmdlet will be modified in a future release » (« le type d’objet de sortie de cette applet de commande sera modifié dans une version ultérieure »). Ce comportement est normal ; vous pouvez ignorer ces avertissements.

Se connecter

Si vous utilisez Azure Cloud Shell, vous êtes automatiquement invité à vous connecter à votre compte après avoir ouvert Cloud Shell. Vous n’avez pas besoin d’exécuter Connect-AzAccount. Une fois connecté, vous pouvez toujours changer d’abonnement si nécessaire à l’aide de Get-AzSubscription et Select-AzSubscription.

Si vous exécutez PowerShell en local, ouvrez la console PowerShell avec des privilèges élevés et connectez-vous à votre compte Azure. La cmdlet Connect-AzAccount vous invite à entrer des informations d’identification. Une fois que vous êtes identifié, vos paramètres de compte sont téléchargés afin de les mettre à disposition d’Azure PowerShell. Vous pouvez changer d’abonnement à l’aide de Get-AzSubscription et Select-AzSubscription -SubscriptionName "Name of subscription".

Créer un réseau virtuel

  1. Créer un groupe de ressources avec New-AzResourceGroup.

    New-AzResourceGroup -Name "TestRG1" -Location "EastUS"
    
  2. Créez le réseau virtuel à l’aide de la commande New-AzVirtualNetwork.

    $vnet = New-AzVirtualNetwork `
    -ResourceGroupName "TestRG1" `
    -Location "EastUS" `
    -Name "VNet1" `
    -AddressPrefix 10.1.0.0/16
    
  3. Créez des sous-réseaux à l’aide de New-AzVirtualNetworkSubnetConfig avec les noms suivants : FrontEnd et GatewaySubnet (un sous-réseau de passerelle doit être nommé GatewaySubnet).

    $subnetConfigFrontend = Add-AzVirtualNetworkSubnetConfig `
      -Name Frontend `
      -AddressPrefix 10.1.0.0/24 `
      -VirtualNetwork $vnet
    
    $subnetConfigGW = Add-AzVirtualNetworkSubnetConfig `
      -Name GatewaySubnet `
      -AddressPrefix 10.1.255.0/27 `
      -VirtualNetwork $vnet
    
  4. Écrivez les configurations de sous-réseaux dans le réseau virtuel à l’aide de la commande Set-AzVirtualNetwork, ce qui crée les sous-réseaux dans le réseau virtuel :

    $vnet | Set-AzVirtualNetwork
    

Créer la passerelle VPN

Demander une adresse IP publique

Une passerelle VPN doit avoir une adresse IP publique. Vous commencez par demander la ressource d’adresse IP, puis vous y faites référence lors de la création de votre passerelle de réseau virtuel. L’adresse IP est affectée de manière statique à la ressource lors de la création de la passerelle VPN. L’adresse IP publique change uniquement lorsque la passerelle est supprimée, puis recréée. Elle n’est pas modifiée lors du redimensionnement, de la réinitialisation ou des autres opérations de maintenance/mise à niveau internes de votre passerelle VPN.

  1. Demandez une adresse IP publique pour votre passerelle VPN à l’aide de Get-AzPublicIpAddress.

    $gwpip = New-AzPublicIpAddress -Name "GatewayIP" -ResourceGroupName "TestRG1" -Location "EastUS" -AllocationMethod Static -Sku Standard
    
  2. Créez la configuration de l’adresse IP de la passerelle à l’aide de New-AzVirtualNetworkGatewayIpConfig. Cette configuration est référencée lorsque vous créez la passerelle VPN.

    $vnet = Get-AzVirtualNetwork -Name "VNet1" -ResourceGroupName "TestRG1"
    $gwsubnet = Get-AzVirtualNetworkSubnetConfig -Name 'GatewaySubnet' -VirtualNetwork $vnet
    $gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig1 -SubnetId $gwsubnet.Id -PublicIpAddressId $gwpip.Id
    

Créer la passerelle VPN

Dans cette étape, vous configurez et créez la passerelle de réseau virtuel pour votre réseau virtuel. Pour plus d’informations sur l’authentification et le type de tunnel, consultez Spécifier le type de tunnel et d’authentification dans la version Portail Azure de cet article.

  • Le paramètre -GatewayType doit être défini sur la valeur Vpn, tandis que le paramètre -VpnType doit être défini sur la valeur RouteBased.
  • Le paramètre -VpnClientProtocol est utilisé pour spécifier les types de tunnels que vous souhaitez activer. Les types de tunnels disponibles sont OpenVPN, SSTP et IKEv2. Vous pouvez choisir d’en activer l'un deux, voire une combinaison prise en charge. Si vous souhaitez activer plusieurs types, vous devez spécifier les noms séparés par une virgule. OpenVPN et SSTP ne peuvent pas être activés conjointement. Le client strongSwan sur Android et Linux et le client VPN IKEv2 natif sur iOS et macOS n’utiliseront que le tunnel IKEv2 pour se connecter. Les clients Windows essaient IKEv2 en premier lieu. En cas d’échec de la connexion, ils utilisent SSTP. Vous pouvez utiliser le client OpenVPN pour la connexion au type de tunnel OpenVPN.
  • La référence SKU de base de la passerelle de réseau virtuel ne prend pas en charge IKEv2, OpenVPN ou l’authentification RADIUS. Si vous envisagez de connecter des clients Mac à votre réseau virtuel, n’utilisez pas la référence SKU de base.
  • La mise en place d’une passerelle VPN peut prendre 45 minutes ou plus, selon le référence sku de la passerelle que vous sélectionnez.
  1. Créez la passerelle de réseau virtuel avec le type de passerelle « VPN » à l’aide de New-AzVirtualNetworkGateway.

    Dans cet exemple, nous utilisons la référence SKU VpnGw2, génération 2. Si vous voyez des erreurs ValidateSet relatives à la valeur GatewaySKU et que vous exécutez ces commandes localement, vérifiez que vous avez installé la dernière version des cmdlets PowerShell. La dernière version contient les nouvelles valeurs validées pour les dernières références SKU de passerelle.

    New-AzVirtualNetworkGateway -Name "VNet1GW" -ResourceGroupName "TestRG1" `
    -Location "EastUS" -IpConfigurations $gwipconfig -GatewayType Vpn `
    -VpnType RouteBased -EnableBgp $false -GatewaySku VpnGw2 -VpnGatewayGeneration "Generation2" -VpnClientProtocol IkeV2,OpenVPN
    
  2. Une fois votre passerelle créée, vous pouvez l’afficher à l’aide de l’exemple suivant.

    Get-AzVirtualNetworkGateway -Name VNet1GW -ResourceGroup TestRG1
    

Ajouter le pool d’adresses du client VPN

Après la création par la passerelle VPN, vous pouvez ajouter le pool d’adresses des clients VPN. Il s’agit de la plage à partir de laquelle les clients VPN reçoivent une adresse IP lorsqu’ils se connectent. Utilisez une plage d’adresses IP privées qui ne chevauche, ni l’emplacement local à partir duquel vous vous connectez, ni le réseau virtuel auquel vous souhaitez vous connecter.

  1. Déclarez les variables suivantes :

    $VNetName  = "VNet1"
    $VPNClientAddressPool = "172.16.201.0/24"
    $RG = "TestRG1"
    $Location = "EastUS"
    $GWName = "VNet1GW"
    
  2. Ajouter le pool d’adresses des clients VPN :

    $Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName $RG -Name $GWName
    Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway -VpnClientAddressPool $VPNClientAddressPool
    

Générer des certificats

Important

Vous ne pouvez pas générer de certificats avec Azure Cloud Shell. Vous devez utiliser l’une des méthodes présentées dans cette section. Si vous souhaitez utiliser PowerShell, vous devez l’installer localement.

Les certificats sont utilisés par Azure afin d’authentifier les clients VPN pour les VPN P2S. Vous chargez les informations de la clé publique du certificat racine vers Azure. La clé publique est alors considérée comme « approuvée ». Les certificats clients doivent être générés à partir du certificat racine approuvé, puis installés sur chaque ordinateur client dans le magasin de certificats Utilisateur actuel/Personnel. Le certificat permet d’authentifier le client lorsqu’il établit une connexion avec le réseau virtuel.

Si vous utilisez des certificats auto-signés, ceux-ci doivent être créés à l’aide de paramètres spécifiques. Vous pouvez créer un certificat auto-signé en suivant les instructions relatives à PowerShell pour les ordinateurs Windows exécutant Windows 10 ou versions ultérieures. Si vous n’exécutez pas Windows 10 ou une version ultérieure, utilisez plutôt MakeCert.

Il est important de suivre les étapes décrites dans les instructions lorsque vous générez des certificats racines auto-signés et des certificats clients. Dans le cas contraire, les certificats que vous générez ne seront pas compatibles avec les connexions P2S, ce qui entraînera une erreur de connexion.

Certificat racine

  1. Obtenez le fichier .cer pour le certificat racine. Vous pouvez utiliser un certificat racine qui a été généré à l’aide d’une solution d’entreprise (recommandé), ou générer un certificat auto-signé. Après avoir créé le certificat racine, exportez les données de certificat public (et non la clé privée) en tant que fichier .cer X.509 encodé en Base64. Vous téléchargez ce fichier plus tard dans Azure.

    • Certificat d’entreprise : Si vous utilisez une solution d’entreprise, vous pouvez utiliser votre chaîne d’approbation existante. Obtenez le fichier .cer pour le certificat racine que vous souhaitez utiliser.

    • Certificat racine auto-signé : Si vous n’utilisez pas de solution de certificat d’entreprise, créez un certificat racine auto-signé. Sinon, les certificats que vous créez ne seront pas compatibles avec vos connexions P2S et les clients recevront une erreur de connexion lorsqu'ils tenteront de se connecter. Vous pouvez utiliser Azure PowerShell, MakeCert ou OpenSSL. Les procédures décrites dans les articles suivants expliquent comment générer un certificat racine auto-signé compatible :

      • Instructions PowerShell pour Windows 10 ou version ultérieure : ces instructions nécessitent PowerShell sur un ordinateur exécutant Windows 10 ou version ultérieure. Les certificats clients qui sont générés à partir du certificat racine peuvent être installés sur n’importe quel client P2S pris en charge.
      • Instructions MakeCert : utilisez MakeCert pour générer des certificats si vous n'avez pas accès à un ordinateur exécutant Windows 10 ou une version ultérieure. Même si MakeCert est déconseillé, vous pouvez toujours l’utiliser pour générer des certificats. Les certificats clients que vous générez à partir du certificat racine peuvent être installés sur n’importe quel client P2S pris en charge.
      • Linux – Instructions OpenSSL
      • Linux – Instructions strongSwan
  2. Après avoir créé le certificat racine, exportez les données de certificat public (pas la clé privée) en tant que fichier .cer X.509 encodé en Base64.

Certificat client

  1. Chaque ordinateur client que vous connectez à un réseau virtuel avec une connexion point à site doit avoir un certificat client installé. Ce certificat doit être généré à partir du certificat racine, puis installé sur chaque ordinateur client. Si vous n’installez pas de certificat client valide, l’authentification échoue lorsque le client essaie de se connecter au réseau virtuel.

    Vous pouvez soit générer un certificat unique pour chaque client, soir utiliser le même certificat pour plusieurs clients. Le fait de générer des certificats clients uniques vous offre la possibilité de révoquer un seul certificat. Dans le cas contraire, si plusieurs clients utilisent le même certificat client pour s’authentifier et que vous révoquez ce dernier, vous devrez générer et installer de nouveaux certificats pour chaque client qui utilise ce certificat.

    Vous pouvez générer des certificats clients à l’aide des méthodes suivantes :

    • Certificat d’entreprise :

      • Si vous utilisez une solution de certificat d’entreprise, générez un certificat client avec le format de valeur de nom commun name@yourdomain.com. Utilisez ce format au lieu du format domain name\username.

      • Assurez-vous que le certificat client repose sur un modèle de certificat utilisateur qui indique Authentification client comme premier élément dans la liste d’utilisateurs. Vérifiez le certificat en double-cliquant dessus et en affichant Utilisation avancée de la clé dans l’onglet Détails.

    • Certificat racine auto-signé : Suivez la procédure décrite dans l’un des articles concernant les certificats P2S ci-dessous pour créer des certificats clients compatibles avec vos connexions P2S.

      Lorsque vous générez un certificat client à partir d’un certificat racine auto-signé, ce certificat est automatiquement installé sur l’ordinateur que vous avez utilisé pour le générer. Si vous souhaitez installer un certificat client sur un autre ordinateur client, exportez-le en tant que fichier .pfx, avec l’intégralité de la chaîne du certificat. Cette opération crée un fichier .pfx contenant les informations de certificat racine requises pour l’authentification du client.

      Les procédures décrites dans ces articles permettent de générer un certificat client compatible, que vous pouvez ensuite exporter et distribuer.

      • Instructions pour PowerShell sur Windows 10 ou version ultérieure : ces instructions requièrent Windows 10 ou une version ultérieure, et PowerShell pour générer des certificats. Les certificats qui sont générés peuvent être installés sur n’importe quel client P2S pris en charge.

      • Instructions pour MakeCert : si vous n’avez pas accès à un ordinateur Windows 10 ou version ultérieure, utilisez MakeCert pour générer des certificats. Même si MakeCert est déconseillé, vous pouvez toujours l’utiliser pour générer des certificats. Vous pouvez installer les certificats générés sur n’importe quel client P2S pris en charge.

      • Instructions Linux.

  2. Après avoir généré le certificat client, exportez-le. Chaque ordinateur client doit avoir un certificat client pour se connecter et s’authentifier.

Charger les informations de la clé publique du certificat racine

Vérifiez que votre passerelle VPN a terminé la création. Une fois terminée, vous pouvez charger le fichier .cer (qui contient les informations de clé publique) pour un certificat racine approuvé dans Azure. Une fois qu’un fichier .cer est chargé, Azure peut l’utiliser pour authentifier les clients qui ont installé un certificat client généré à partir du certificat racine approuvé. Vous pouvez charger ultérieurement d’autres fichiers de certificat racine approuvé, jusqu’à un total de 20, si nécessaire.

Notes

Vous ne pouvez pas charger le fichier .cer à l’aide d’Azure Cloud Shell. Vous pouvez soit utiliser PowerShell localement sur votre ordinateur, soit utiliser les étapes du Portail Azure.

  1. Déclarez la variable pour le nom de votre certificat, en remplaçant la valeur par la vôtre.

    $P2SRootCertName = "P2SRootCert.cer"
    
  2. Remplacez le chemin d’accès de fichier par le vôtre et exécutez les applets de commande.

    $filePathForCert = "C:\cert\P2SRootCert.cer"
    $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert)
    $CertBase64 = [system.convert]::ToBase64String($cert.RawData)
    
  3. Chargez les informations de clé publique vers Azure. Une fois les informations de certificat chargées, Azure considère qu’il s’agit d’un certificat racine approuvé. Lors du chargement, assurez-vous d’exécuter PowerShell localement sur votre ordinateur, ou à la place, vous pouvez utiliser les étapes du Portail Azure. Une fois le chargement terminé, un retour PowerShell s’affiche avec PublicCertData. Le processus de chargement de certificat prend environ 10 minutes.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG1" -PublicCertData $CertBase64
    

Installer un certificat client exporté

Les étapes suivantes vous permettent d’effectuer l’installation sur un client Windows. Pour obtenir des clients supplémentaires et plus d’informations, consultez Installer un certificat client.

  1. Une fois le certificat client exporté, localisez et copiez le fichier .pfx sur l’ordinateur client.
  2. Sur l’ordinateur client, double-cliquez sur le fichier .pfx à installer. Conservez la valeur Utilisateur actuel pour Emplacement du magasin, puis sélectionnez Suivant.
  3. N’apportez aucune modification à la page Fichier à importer . Sélectionnez Suivant.
  4. Sur la page Protection de clé privée, entrez le mot de passe du certificat, ou vérifiez que le principal de sécurité est correct, puis sélectionnez Suivant.
  5. Sur la page Magasin de certificats, laissez l’emplacement par défaut, puis sélectionnez Suivant.
  6. Sélectionnez Terminer. Sur la page Avertissement de sécurité relative à l’installation du certificat, sélectionnez Oui. Il n’y a aucun risque à cela, car vous avez généré le certificat.
  7. Le certificat est désormais importé.

Assurez-vous que le certificat client a été exporté dans un fichier .pfx avec la totalité de la chaîne du certificat (qui est la valeur par défaut). Dans le cas contraire, les informations du certificat racine ne sont pas présentes sur l’ordinateur client et le client ne pourra pas s’authentifier correctement.

Configurer des clients VPN et se connecter à Azure

Chaque client VPN est configuré à l’aide des fichiers d’un package de configuration de profil client VPN que vous générez et téléchargez. Le package de configuration contient des paramètres spécifiques à la passerelle VPN que vous avez créée. Si vous apportez des modifications à la passerelle, telles que la modification d’un type de tunnel, d’un certificat ou d’un type d’authentification, vous devez générer un autre package de configuration de profil client VPN et l’installer sur chaque client. Dans le cas contraire, vos clients VPN risquent de ne pas pouvoir se connecter.

Pour connaître les étapes de génération d’un package de configuration de profil client VPN, de configuration de vos clients VPN et de connexion à Azure, consultez les articles suivants :

Pour vérifier une connexion

Ces instructions s’appliquent aux clients Windows.

  1. Pour vérifier que votre connexion VPN est active, ouvrez une invite de commandes avec élévation de privilèges, puis exécutez ipconfig/all.

  2. Affichez les résultats. Notez que l’adresse IP que vous avez reçue est l’une des adresses du pool d’adresses de client VPN P2S que vous avez spécifiées dans votre configuration. Les résultats ressemblent à l’exemple qui suit :

    PPP adapter VNet1:
       Connection-specific DNS Suffix .:
       Description.....................: VNet1
       Physical Address................:
       DHCP Enabled....................: No
       Autoconfiguration Enabled.......: Yes
       IPv4 Address....................: 172.16.201.13(Preferred)
       Subnet Mask.....................: 255.255.255.255
       Default Gateway.................:
       NetBIOS over Tcpip..............: Enabled
    

Pour vous connecter à un ordinateur virtuel

Ces instructions s’appliquent aux clients Windows.

Vous pouvez vous connecter à une machine virtuelle déployée sur votre réseau virtuel en créant une connexion Bureau à distance à votre machine virtuelle. La meilleure méthode pour vérifier initialement que vous pouvez vous connecter à votre machine virtuelle consiste à vous connecter à l’aide de son adresse IP privée, plutôt qu’avec le nom d’ordinateur. Vous testez ainsi si vous pouvez vous connecter, que la résolution de nom soit configurée correctement ou non.

  1. Recherchez l’adresse IP privée. Vous pouvez déterminer l’adresse IP privée d’une machine virtuelle en examinant ses propriétés dans le Portail Azure ou à l’aide de PowerShell.

    • Portail Azure : recherchez votre machine virtuelle dans le Portail Azure. Affichez les propriétés de la machine virtuelle. L’adresse IP privée est répertoriée.

    • PowerShell : utilisez l’exemple pour afficher la liste des machines virtuelles et adresses IP privées de vos groupes de ressources. Vous n’avez pas besoin de modifier cet exemple pour pouvoir l’utiliser.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where-Object VirtualMachine -ne $null
      
      foreach ($Nic in $Nics) {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. Vérifiez que vous êtes connecté à votre réseau virtuel.

  3. Ouvrez Connexion Bureau à distance en entrant RDP ou Connexion Bureau à distance dans la zone de recherche de la barre des tâches. Ensuite, sélectionnez Connexion Bureau à distance. Vous pouvez également ouvrir Connexion Bureau à distance en exécutant la commande mstsc dans PowerShell.

  4. Dans Connexion Bureau à distance, entrez l’adresse IP privée de la machine virtuelle. Vous pouvez sélectionner Afficher les options pour définir des paramètres supplémentaires, puis vous connecter.

Si vous rencontrez des problèmes de connexion à une machine virtuelle sur votre connexion VPN, vérifiez les points suivants :

  • Vérifiez que votre connexion VPN aboutit.
  • Vérifiez que vous vous connectez à l’adresse IP privée de la machine virtuelle.
  • Si vous pouvez vous connecter à la machine virtuelle à l’aide de l’adresse IP privée, mais pas à l’aide du nom d’ordinateur, vérifiez que vous avez correctement configuré le système DNS. Pour plus d’informations sur le fonctionnement de la résolution de noms pour les machines virtuelles, consultez Résolution de noms pour les machines virtuelles.

Pour plus d’informations sur les connexions RDP, consultez Résoudre des problèmes de connexion Bureau à distance à une machine virtuelle.

  • Vérifiez que le package de configuration du client VPN a été généré après que les adresses IP du serveur DNS ont été spécifiées pour le réseau virtuel. Si vous avez mis à jour les adresses IP du serveur DNS, générez et installez un package de configuration du client VPN.

  • Utilisez « ipconfig » pour vérifier l’adresse IPv4 attribuée à l’adaptateur Ethernet sur l’ordinateur à partir duquel vous vous connectez. Si l’adresse IP est comprise dans la plage d’adresses du réseau virtuel auquel vous vous connectez, ou dans la plage d’adresses de votre VPNClientAddressPool, cette situation est désignée sous le terme d’espaces d’adressage qui se chevauchent. Lorsque vos espaces d’adressage se chevauchent de cette façon, le trafic réseau n’atteint pas Azure et reste sur le réseau local.

Pour ajouter ou supprimer un certificat racine

Vous pouvez ajouter et supprimer des certificats racines approuvés à partir d'Azure. Lorsque vous supprimez un certificat racine, les clients qui possèdent un certificat généré à partir de la racine ne peuvent pas s’authentifier, et ne seront donc pas en mesure de se connecter. Si vous souhaitez que des clients s’authentifient et se connectent, vous devez installer un nouveau certificat client généré à partir d’un certificat racine approuvé (téléchargé) dans Azure. Ces étapes nécessitent l’installation loacale d’applets de commande Azure PowerShell sur votre ordinateur (et non pas Azure Cloud Shell). Vous pouvez également utiliser le portail Azure pour ajouter des certificats racines.

Pour ajouter :

Vous pouvez ajouter jusqu’à 20 fichiers .cer de certificat racine dans Azure. La procédure suivante vous permet d’ajouter un certificat racine.

  1. Préparez le fichier .cer à télécharger :

    $filePathForCert = "C:\cert\P2SRootCert3.cer"
    $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert)
    $CertBase64_3 = [system.convert]::ToBase64String($cert.RawData)
    
  2. Chargez le fichier. Vous ne pouvez charger qu’un seul fichier à la fois.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG1" -PublicCertData $CertBase64_3
    
  3. Pour vérifier que le fichier de certificat est chargé :

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG1" `
    -VirtualNetworkGatewayName "VNet1GW"
    

Pour supprimer :

  1. Déclarez les variables. Modifiez les variables de l’exemple pour qu’elles correspondent au certificat que vous souhaitez supprimer.

    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    $P2SRootCertName2 = "ARMP2SRootCert2.cer"
    $MyP2SCertPubKeyBase64_2 = "MIIC/zCCAeugAwIBAgIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAMBgxFjAUBgNVBAMTDU15UDJTUm9vdENlcnQwHhcNMTUxMjE5MDI1MTIxWhcNMzkxMjMxMjM1OTU5WjAYMRYwFAYDVQQDEw1NeVAyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyjIXoWy8xE/GF1OSIvUaA0bxBjZ1PJfcXkMWsHPzvhWc2esOKrVQtgFgDz4ggAnOUFEkFaszjiHdnXv3mjzE2SpmAVIZPf2/yPWqkoHwkmrp6BpOvNVOpKxaGPOuK8+dql1xcL0eCkt69g4lxy0FGRFkBcSIgVTViS9wjuuS7LPo5+OXgyFkAY3pSDiMzQCkRGNFgw5WGMHRDAiruDQF1ciLNojAQCsDdLnI3pDYsvRW73HZEhmOqRRnJQe6VekvBYKLvnKaxUTKhFIYwuymHBB96nMFdRUKCZIiWRIy8Hc8+sQEsAML2EItAjQv4+fqgYiFdSWqnQCPf/7IZbotgQIDAQABo00wSzBJBgNVHQEEQjBAgBAkuVrWvFsCJAdK5pb/eoCNoRowGDEWMBQGA1UEAxMNTXlQMlNSb290Q2VydIIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAA4IBAQA223veAZEIar9N12ubNH2+HwZASNzDVNqspkPKD97TXfKHlPlIcS43TaYkTz38eVrwI6E0yDk4jAuPaKnPuPYFRj9w540SvY6PdOUwDoEqpIcAVp+b4VYwxPL6oyEQ8wnOYuoAK1hhh20lCbo8h9mMy9ofU+RP6HJ7lTqupLfXdID/XevI8tW6Dm+C/wCeV3EmIlO9KUoblD/e24zlo3YzOtbyXwTIh34T0fO/zQvUuBqZMcIPfM1cDvqcqiEFLWvWKoAnxbzckye2uk1gHO52d8AVL3mGiX8wBJkjc/pMdxrEvvCzJkltBmqxTM6XjDJALuVh16qFlqgTWCIcb7ju"
    
  2. Supprimez le certificat.

    Remove-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName2 -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG -PublicCertData $MyP2SCertPubKeyBase64_2
    
  3. Utilisez l'exemple suivant pour vérifier que le certificat a été supprimé avec succès.

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG1" `
    -VirtualNetworkGatewayName "VNet1GW"
    

Pour révoquer ou rétablir un certificat client

Vous pouvez révoquer des certificats clients. La liste de révocations de certificats vous permet de refuser de façon sélective la connexion P2S en fonction de certificats clients individuels. Cela est différent de la suppression d’un certificat racine approuvé. Si vous supprimez un fichier .cer de certificat racine approuvé d’Azure, vous révoquez l’accès pour tous les certificats clients générés/signés par le certificat racine révoqué. Le fait de révoquer un certificat client plutôt que le certificat racine permet de continuer à utiliser les autres certificats générés à partir du certificat racine pour l’authentification.

La pratique courante consiste à utiliser le certificat racine pour gérer l'accès au niveaux de l'équipe ou de l'organisation, tout en utilisant des certificats clients révoqués pour le contrôle d'accès précis des utilisateurs individuels.

Pour révoquer :

  1. Récupérez l’empreinte du certificat client. Pour plus d’informations, consultez l’article Comment : récupérer l’empreinte numérique d’un certificat.

  2. Copiez les informations dans un éditeur de texte et supprimez tous les espaces afin d’obtenir une chaîne continue. Cette chaîne est déclarée sous la forme d’une variable à l’étape suivante.

  3. Déclarez les variables. Veillez à déclarer l’empreinte numérique que vous avez récupérée à l’étape précédente.

    $RevokedClientCert1 = "NameofCertificate"
    $RevokedThumbprint1 = "‎51ab1edd8da4cfed77e20061c5eb6d2ef2f778c7"
    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    
  4. Ajoutez l’empreinte numérique à la liste des certificats révoqués. Une fois l’empreinte numérique ajoutée, le message « Réussi » s’affiche.

    Add-AzVpnClientRevokedCertificate -VpnClientRevokedCertificateName $RevokedClientCert1 `
    -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG `
    -Thumbprint $RevokedThumbprint1
    
  5. Vérifiez que l'empreinte numérique a été ajoutée à la liste de révocation de certificats.

    Get-AzVpnClientRevokedCertificate -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG
    
  6. Après avoir ajouté l’empreinte numérique, le certificat ne peut plus être utilisé pour se connecter. Les clients qui tentent de se connecter à l’aide de ce certificat reçoivent un message indiquant que le certificat n’est plus valide.

Pour rétablir :

Vous pouvez réactiver un certificat client en supprimant l'empreinte numérique de la liste des certificats clients révoqués.

  1. Déclarez les variables. Assurez-vous de déclarer la bonne empreinte numérique pour le certificat que vous souhaitez rétablir.

    $RevokedClientCert1 = "NameofCertificate"
    $RevokedThumbprint1 = "‎51ab1edd8da4cfed77e20061c5eb6d2ef2f778c7"
    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    
  2. Supprimez l’empreinte numérique du certificat de la liste de révocation de certificats.

    Remove-AzVpnClientRevokedCertificate -VpnClientRevokedCertificateName $RevokedClientCert1 `
    -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG -Thumbprint $RevokedThumbprint1
    
  3. Vérifiez si l'empreinte numérique est supprimée de la liste de révocation.

    Get-AzVpnClientRevokedCertificate -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG
    

QUESTIONS FRÉQUENTES (FAQ) SUR P2S

Pour plus d’informations sur P2S, consultez le FAQ sur les passerelle VPN P2S

Étapes suivantes

Une fois la connexion achevée, vous pouvez ajouter des machines virtuelles à vos réseaux virtuels. Pour plus d’informations, consultez Machines virtuelles. Pour plus d’informations sur la mise en réseau et les machines virtuelles, consultez Vue d’ensemble du réseau de machines virtuelles Azure et Linux.

Pour plus d’informations sur la résolution des problèmes liés à P2S, consultez l’article Résolution des problèmes : problèmes de connexion Azure P2S.