Créer un réseau virtuel avec une connexion VPN de site à site à l’aide de l’interface CLI

Cet article vous explique comment utiliser l’interface de ligne de commande Azure pour créer une connexion de passerelle VPN de site à site à partir de votre réseau local vers le réseau virtuel. Les étapes mentionnées dans cet article s’appliquent au modèle de déploiement Resource Manager. Vous pouvez également créer cette configuration à l’aide d’un autre outil ou modèle de déploiement en sélectionnant une option différente dans la liste suivante :

Diagramme de connexion intersite d’une passerelle VPN site à site pour un article CLI.

Une connexion de passerelle VPN de site à site permet de connecter votre réseau local à un réseau virtuel Azure via un tunnel VPN IPsec/IKE (IKEv1 ou IKEv2). Ce type de connexion requiert un périphérique VPN local disposant d’une adresse IP publique exposée en externe. Pour plus d’informations sur les passerelles VPN, consultez l’article À propos de la passerelle VPN.

Avant de commencer

Vérifiez que vous disposez des éléments ci-dessous avant de commencer votre configuration :

  • Veillez à disposer d’un périphérique VPN compatible et à être entouré d’une personne en mesure de le configurer. Pour plus d’informations sur les périphériques VPN compatibles et la configuration de votre périphérique, consultez l’article À propos des périphériques VPN.
  • Vérifiez que vous disposez d’une adresse IPv4 publique exposée en externe pour votre périphérique VPN.
  • Si vous ne maîtrisez pas les plages d’adresses IP situées dans votre configuration de réseau local, vous devez contacter une personne en mesure de vous aider. Lorsque vous créez cette configuration, vous devez spécifier les préfixes des plages d’adresses IP qu’Azure acheminera vers votre emplacement local. Aucun des sous-réseaux de votre réseau local ne peut chevaucher les sous-réseaux du réseau virtuel auquel vous souhaitez vous connecter.
  • Cet article nécessite la version 2.0 ou ultérieure d’Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.

Exemples de valeurs

Vous pouvez utiliser ces valeurs pour créer un environnement de test ou vous y référer pour mieux comprendre les exemples de cet article :

#Example values

VnetName                = VNet1 
ResourceGroup           = TestRG1 
Location                = eastus 
AddressSpace            = 10.1.0.0/16 
SubnetName              = Frontend
Subnet                  = 10.1.0.0/24 
GatewaySubnet           = 10.1.255.0/27 
LocalNetworkGatewayName = Site1
LNG Public IP           = <On-premises VPN device IP address>
LocalAddrPrefix1        = 10.0.0.0/24
LocalAddrPrefix2        = 20.0.0.0/24   
GatewayName             = VNet1GW 
PublicIP                = VNet1GWIP 
GatewayType             = Vpn 
ConnectionName          = VNet1toSite2

1. Connexion à votre abonnement

Si vous choisissez d’exécuter CLI localement, connectez-vous à votre abonnement. Si vous utilisez Azure Cloud Shell dans le navigateur, vous n’avez pas besoin de vous connecter à votre abonnement. Vous vous connectez automatiquement dans Azure Cloud Shell. Toutefois, il est possible que vous souhaitiez vérifier que vous utilisez l’abonnement approprié après vous être connecté.

Connectez-vous à votre abonnement Azure avec la commande az login et suivez les instructions à l’écran. Pour plus d’informations sur la connexion, consultez Bien démarrer avec Azure CLI.

az login

Si vous disposez de plusieurs abonnements Azure, répertoriez les abonnements associés au compte.

az account list --all

Spécifiez l’abonnement à utiliser.

az account set --subscription <replace_with_your_subscription_id>

2. Créer un groupe de ressources

L’exemple suivant crée un groupe de ressources nommé « TestRG1 » à l’emplacement « eastus ». Si vous disposez déjà d’un groupe de ressources dans la région où vous souhaitez créer votre réseau virtuel, vous pouvez l’utiliser à la place de l’exemple donné.

az group create --name TestRG --location eastus

3. Créez un réseau virtuel

Si vous n’avez pas de réseau virtuel, créez-en un à l’aide de la commande az network vnet create. Lorsque vous créez un réseau virtuel, vérifiez que les espaces d’adressage que vous spécifiez ne chevauchent pas les espaces d’adressage de votre réseau local.

Notes

Afin que ce réseau virtuel puisse se connecter à un emplacement local, vous devez coordonner avec votre administrateur de réseau local pour consacrer une plage d’adresses IP à utiliser spécifiquement pour ce réseau virtuel. Si une plage d’adresses en double existe des deux côtés de la connexion VPN, le trafic ne sera pas correctement acheminé. En outre, si vous souhaitez connecter ce réseau virtuel à un autre réseau virtuel, l’espace d’adressage ne peut pas se chevaucher avec un autre réseau virtuel. Veillez à planifier votre configuration réseau en conséquence.

L’exemple suivant permet de créer un réseau virtuel nommé « VNet1 » et un sous-réseau nommé « Subnet1 ».

az network vnet create --name VNet1 --resource-group TestRG1 --address-prefix 10.1.0.0/16 --location eastus --subnet-name Subnet1 --subnet-prefix 10.1.0.0/24

4. Créer le sous-réseau de passerelle

La passerelle de réseau virtuel utilise un sous-réseau spécifique, appelé sous-réseau de passerelle. Le sous-réseau de passerelle fait partie de la plage d’adresses IP du réseau virtuel que vous spécifiez lors de la configuration de votre réseau virtuel. Il contient les adresses IP utilisées par les ressources et les services de passerelle de réseau virtuel. Le sous-réseau doit être nommé « GatewaySubnet » pour qu’Azure puisse déployer les ressources de passerelle. Vous ne pouvez pas spécifier un autre sous-réseau pour y déployer les ressources de passerelle. Si vous n’avez pas de sous-réseau nommé « GatewaySubnet », vous ne pourrez pas créer votre passerelle VPN.

Lorsque vous créez le sous-réseau de passerelle, vous spécifiez le nombre d’adresses IP que contient le sous-réseau. Le nombre d’adresses IP requises varie selon la configuration de la passerelle VPN que vous souhaitez créer. Certaines configurations nécessitent plus d’adresses IP que d’autres. Nous vous recommandons de créer un sous-réseau de passerelle dont la taille est définie sur /27 ou /28.

Si une erreur s’affiche indiquant que l’espace d’adressage chevauche un sous-réseau, ou que le sous-réseau n’est pas contenu dans l’espace d’adressage de votre réseau virtuel, vérifiez la plage d’adresses de votre réseau virtuel. Vous n’avez peut-être pas suffisamment d’adresses IP disponibles dans la plage d’adresses que vous avez créée pour votre réseau virtuel. Par exemple, si votre sous-réseau par défaut englobe la plage d’adresses complète, il n’y a plus d’adresses IP disponibles pour créer des sous-réseaux supplémentaires. Vous pouvez ajuster vos sous-réseaux au sein de l’espace d’adressage existant pour libérer des adresses IP, ou spécifier une plage d’adresses supplémentaire pour y créer le sous-réseau de passerelle.

Utilisez la commande az network vnet subnet create pour créer le sous-réseau de passerelle.

az network vnet subnet create --address-prefix 10.1.255.0/27 --name GatewaySubnet --resource-group TestRG1 --vnet-name VNet1

Important

Lorsque vous travaillez avec des sous-réseaux de passerelle, évitez d’associer un groupe de sécurité réseau (NSG) au sous-réseau de passerelle. Associer un groupe de sécurité réseau à ce sous-réseau peut empêcher votre passerelle de réseau virtuel (passerelles VPN et ExpressRoute) de fonctionner comme prévu. Pour plus d’informations sur les groupes de sécurité réseau, consultez Présentation du groupe de sécurité réseau ?.

5. Créer la passerelle de réseau local

La passerelle de réseau local fait généralement référence à votre emplacement local. Donnez au site un nom auquel Azure pourra se référer, puis spécifiez l’adresse IP du périphérique VPN local vers lequel vous allez créer une connexion. Spécifiez également les préfixes d’adresses IP qui seront acheminés via la passerelle VPN vers le périphérique VPN. Les préfixes d’adresses que vous spécifiez sont les préfixes situés sur votre réseau local. Vous pouvez facilement mettre à jour ces préfixes si votre réseau local change.

Utilisez les valeurs suivantes :

  • La valeur --gateway-ip-address est l’adresse IP de votre périphérique VPN local.
  • La valeur --local-address-prefixes représente vos espaces d’adressage local.

Utilisez la commande az network local-gateway create pour ajouter une passerelle de réseau local avec plusieurs préfixes d’adresses :

az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 --resource-group TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24

6. 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 dynamiquement à 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. Si vous souhaitez créer une passerelle VPN à l’aide de la référence SKU de passerelle de base, demandez une adresse IP publique avec les valeurs suivantes : --allocation-method Dynamic --sku Basic.

Utilisez la commande az network public-ip create pour demander une adresse IP publique.

az network public-ip create --name VNet1GWIP --resource-group TestRG1 --allocation-method Static --sku Standard

7. Créer la passerelle VPN

Créez la passerelle VPN de réseau virtuel. La création d’une passerelle nécessite généralement au moins 45 minutes, selon la référence SKU de passerelle sélectionnée.

Utilisez les valeurs suivantes :

  • Le paramètre --gateway-type pour une configuration de site à site est Vpn. Le type de passerelle dépend toujours de la configuration que vous implémentez. Pour plus d’informations, consultez Types de passerelle.
  • Le --vpn-type est RouteBased (appelé Passerelle dynamique dans certaines documentations).
  • Sélectionnez la référence SKU de la passerelle que vous souhaitez utiliser. Des limites de configuration s’appliquent à certaines références (SKU). Pour plus d’informations, consultez l’article Références (SKU) de passerelle.

Créez la passerelle VPN à l’aide de la commande az network vnet-gateway create. Si vous exécutez cette commande à l’aide du paramètre « --no-wait », vous ne voyez aucun commentaire ni sortie. Ce paramètre permet à la passerelle d’être créée en arrière-plan. La création d’une passerelle nécessite au moins 45 minutes.

az network vnet-gateway create --name VNet1GW --public-ip-address VNet1GWIP --resource-group TestRG1 --vnet VNet1 --gateway-type Vpn --vpn-type RouteBased --sku VpnGw1 --no-wait 

8. Configuration de votre périphérique VPN

Les connexions de site à site vers un réseau local nécessitent un appareil VPN. Dans cette étape, vous configurez votre périphérique VPN. Pour configurer votre périphérique VPN, vous avez besoin des éléments suivants :

  • Une clé partagée. Il s’agit de la clé partagée spécifiée lors de la création de la connexion VPN de site à site. Dans nos exemples, nous utilisons une clé partagée basique. Nous vous conseillons de générer une clé plus complexe.

  • L’adresse IP publique de votre passerelle de réseau virtuel. Vous pouvez afficher l’adresse IP publique à l’aide du portail Azure, de PowerShell ou de l’interface de ligne de commande. Pour trouver l’adresse IP publique de votre passerelle de réseau virtuel, utilisez la commande az network public-ip list. Pour faciliter la lecture, la sortie est mise en forme pour afficher la liste des adresses IP publiques sous forme de tableau.

    az network public-ip list --resource-group TestRG1 --output table
    

Pour télécharger des script de configuration de périphérique VPN :

En fonction du périphérique VPN dont vous disposez, vous pourrez peut-être télécharger un script de configuration de périphérique VPN. Pour plus d’informations, consultez la page Télécharger des script de configuration de périphérique VPN.

Pour plus d’informations sur la configuration, consultez les liens suivants :

9. Créer la connexion VPN

Créez la connexion VPN de site à site entre votre passerelle de réseau virtuel et votre périphérique VPN local. Soyez particulièrement attentif à la valeur de clé partagée qui doit correspondre à la valeur de clé partagée configurée pour votre périphérique VPN.

Créez la connexion à l’aide de la commande az network vpn-connection create.

az network vpn-connection create --name VNet1toSite2 --resource-group TestRG1 --vnet-gateway1 VNet1GW -l eastus --shared-key abc123 --local-gateway2 Site2

Après un bref délai, la connexion sera établie.

10. Vérifier la connexion VPN

Vous pouvez vérifier que votre connexion a réussi à l’aide de la commande az network vpn-connection show. Dans l’exemple, « --name » fait référence au nom de la connexion que vous voulez tester. Tout au long de l’établissement de la connexion, l’état de la connexion indique « Connexion en cours ». Une fois la connexion établie, l’état indique « Connecté ». Modifiez l’exemple suivant avec les valeurs correspondant à votre environnement.

az network vpn-connection show --name <connection-name> --resource-group <resource-group-name>

Si vous souhaitez utiliser une autre méthode pour vérifier votre connexion, consultez l’article Vérifier une connexion de passerelle VPN.

Pour vous connecter à un ordinateur virtuel

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.

Tâches courantes

Cette section contient des commandes courantes qui sont utiles lorsque vous travaillez avec des configurations de site à site. Pour obtenir la liste complète des commandes de mise en réseau CLI, consultez Networking - az network (Mise en réseau - az network).

Pour afficher les passerelles de réseau local

Pour afficher une liste des passerelles de réseau local, utilisez la commande az network local-gateway list.

az network local-gateway list --resource-group TestRG1

Pour modifier des préfixes d’adresses IP de passerelle de réseau local - sans connexion de passerelle

Si vous n’avez pas de connexion de passerelle et mais souhaitez ajouter ou supprimer des préfixes d’adresses IP, utilisez la commande qui vous a permis de créer la passerelle de réseau local, az network local-gateway create. Vous pouvez également utiliser cette commande pour mettre à jour l’adresse IP de passerelle du périphérique VPN. Pour remplacer les paramètres actuels, utilisez le nom existant de votre passerelle de réseau local. Si vous utilisez un nom différent, vous créerez une nouvelle passerelle de réseau local au lieu de remplacer la passerelle existante.

Chaque fois que vous apportez une modification, vous devez renseigner l’intégralité des préfixes, et pas uniquement les préfixes que vous souhaitez modifier. Spécifiez uniquement les préfixes que vous souhaitez conserver. Dans ce cas, 10.0.0.0/24 et 20.0.0.0/24

az network local-gateway create --gateway-ip-address 23.99.221.164 --name Site2 -g TestRG1 --local-address-prefixes 10.0.0.0/24 20.0.0.0/24

Pour modifier des préfixes d’adresses IP de passerelle de réseau local - avec une connexion de passerelle existante

Si vous disposez d’une connexion de passerelle et souhaitez ajouter ou supprimer des préfixes d’adresses IP, vous pouvez mettre à jour les préfixes à l’aide de la commande az network local-gateway update. Cela entraînera une interruption de votre connexion VPN. Lorsque vous modifiez les préfixes d’adresse IP, vous n’avez pas besoin de supprimer la passerelle VPN.

Chaque fois que vous apportez une modification, vous devez renseigner l’intégralité des préfixes, et pas uniquement les préfixes que vous souhaitez modifier. Dans cet exemple, 10.0.0.0/24 et 20.0.0.0/24 sont déjà présents. Nous ajoutons les préfixes 30.0.0.0/24 et 40.0.0.0/24, et nous spécifions tous les 4 des préfixes lors de la mise à jour.

az network local-gateway update --local-address-prefixes 10.0.0.0/24 20.0.0.0/24 30.0.0.0/24 40.0.0.0/24 --name VNet1toSite2 -g TestRG1

Pour modifier la passerelle de réseau local « gatewayIpAddress »

Si le périphérique VPN auquel vous souhaitez vous connecter a changé son adresse IP publique, vous devez modifier la passerelle de réseau local pour refléter cette modification. L’adresse IP de passerelle peut être modifiée sans supprimer de connexion de passerelle VPN existante (si vous en possédez une). Pour modifier l’adresse IP de passerelle, remplacez les valeurs « Site2 » et « TestRG1 » par vos propres valeurs à l’aide de la commande az network local-gateway update.

az network local-gateway update --gateway-ip-address 23.99.222.170 --name Site2 --resource-group TestRG1

Vérifiez que l’adresse IP est correcte dans la sortie :

"gatewayIpAddress": "23.99.222.170",

Pour vérifier les valeurs de clé partagée

Vérifiez que la valeur de clé partagée est identique à celle utilisée pour la configuration de votre périphérique VPN. Si ce n’est pas le cas, exécutez à nouveau la connexion en utilisant la valeur du périphérique ou mettez à jour le périphérique avec la valeur obtenue. Les valeurs doivent correspondre. Pour afficher la clé partagée, utilisez az network vpn-connection-list.

az network vpn-connection shared-key show --connection-name VNet1toSite2 --resource-group TestRG1

Pour afficher l’adresse IP publique de la passerelle VPN

Pour trouver l’adresse IP publique de votre passerelle de réseau virtuel, utilisez la commande az network public-ip list. Pour faciliter la lecture, la sortie de cet exemple est mise en forme pour afficher la liste des adresses IP publiques sous forme de tableau.

az network public-ip list --resource-group TestRG1 --output table

Étapes suivantes