Partager via


Se connecter à une machine virtuelle à l’aide de Bastion et du client natif Windows

Cet article vous aide à vous connecter à une machine virtuelle dans le réseau virtuel à l’aide du client natif (SSH ou RDP) sur votre station de travail locale Windows. La fonctionnalité client native vous permet de vous connecter à vos machines virtuelles cibles via Bastion à l’aide d’Azure CLI et étend vos options de connexion pour inclure la paire de clés SSH locale et l’ID Microsoft Entra. Pour plus d’informations et pour connaître les étapes de configuration de Bastion pour les connexions client natives, consultez l’article Configurer Bastion pour des connexions clientes natives. Les connexions via un client natif nécessitent la référence SKU Bastion Standard ou une version ultérieure.

Diagramme montrant une connexion via client natif.

Après avoir configuré Bastion pour la prise en charge des clients natifs, vous pouvez vous connecter à une machine virtuelle à l'aide d'un client Windows natif. La méthode que vous utilisez pour vous connecter dépend à la fois du client à partir duquel vous vous connectez et de la machine virtuelle à laquelle vous vous connectez. La liste suivante présente certaines des méthodes disponibles pour vous connecter à partir d’un client natif Windows. Voir Connexion aux machines virtuelles pour la liste complète des combinaisons connexion client/fonctionnalités disponibles.

  • Connectez-vous à une machine virtuelle Windows à l’aide de la commande az network bastion rdp.
  • Se connecter à une machine virtuelle Linux en utilisant az network bastion ssh.
  • Connexion à une machine virtuelle à l'aide d'un tunnel de bastion réseau az.
  • Charger et télécharger des fichiers via RDP.
  • Télécharger des fichiers via SSH à l'aide d'un tunnel de bastion réseau az.

Prérequis

Avant de commencer, vérifiez que les prérequis suivants sont remplis :

Vérifier les rôles et les ports

Vérifiez que les rôles et les ports suivants sont configurés pour la connexion de la machine virtuelle.

Rôles nécessaires

  • Rôle de lecteur sur la machine virtuelle.

  • Rôle de lecteur sur la carte réseau avec adresse IP privée de la machine virtuelle.

  • Rôle de lecteur sur la ressource Azure Bastion.

  • Rôle de connexion de l’administrateur de la machine virtuelle ou de connexion de l’utilisateur de la machine virtuelle, si vous utilisez la méthode de connexion Microsoft Entra. Vous ne devez le faire que si vous activez la connexion Microsoft Entra à l’aide des processus décrits dans l’un de ces articles :

Ports

Pour vous connecter à une machine virtuelle Linux à l’aide de la prise en charge du client natif, vous devez ouvrir les ports suivants sur votre machine virtuelle Linux :

  • Port d’entrée : SSH (22) ou
  • Port d’entrée : valeur personnalisée (vous devez spécifier ce port personnalisé quand vous vous connectez à la machine virtuelle avec Azure Bastion)

Pour vous connecter à une machine virtuelle Windows à l’aide de la prise en charge du client natif, vous devez ouvrir les ports suivants sur votre machine virtuelle Windows :

  • Port d’entrée : RDP (3389) ou
  • Port d’entrée : valeur personnalisée (vous devez spécifier ce port personnalisé quand vous vous connectez à la machine virtuelle avec Azure Bastion)

Pour en savoir plus sur la configuration optimale des groupes de sécurité réseau avec Azure Bastion, consultez Utilisation de l’accès NSG et Azure Bastion.

Se connecter à une machine virtuelle

Les étapes décrites dans les sections suivantes vous aident à vous connecter à une machine virtuelle à partir d’un client natif Windows à l’aide de la commande az network bastion .

RDP vers une machine virtuelle Windows

Lorsqu’un utilisateur se connecte à une machine virtuelle Windows via RDP, il doit disposer de droits sur la machine virtuelle cible. Si l’utilisateur n’est pas un administrateur local, ajoutez-le au groupe Utilisateurs du Bureau à distance sur la machine virtuelle cible.

  1. Connectez-vous à votre compte Azure en utilisant az login. Si vous avez plus d'un abonnement, vous pouvez les visualiser en utilisant az account listet sélectionner l'abonnement contenant votre ressource Bastion en utilisant az account set --subscription "<subscription ID>".

  2. Pour se connecter via RDP, utilisez l'exemple suivant.

    az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>"
    
  3. Après avoir exécuté la commande, vous êtes invité à entrer vos informations d’identification. Vous pouvez utiliser soit un nom d’utilisateur et un mot de passe locaux, soit vos informations d’identification Microsoft Entra. Une fois que vous vous êtes connecté à votre VM cible, le client natif sur votre ordinateur s'ouvre avec votre session de machine virtuelle via MSTSC.

    Important

    La connexion à distance aux machines virtuelles jointes à l’ID Microsoft Entra n’est autorisée qu’à partir de Windows 10 ou d’ordinateurs ultérieurs inscrits sur Microsoft Entra (à partir de Windows 10 20H1), joints à Microsoft Entra ou joint par jointure hybride Microsoft Entra au même répertoire en tant que machine virtuelle.

Spécifiez une méthode d'authentification.

Si vous le souhaitez, vous pouvez également spécifier la méthode d’authentification dans le cadre de la commande .

Spécifiez un port personnalisé

Vous pouvez spécifier un port personnalisé lorsque vous vous connectez à une machine virtuelle Windows via RDP.

Un scénario où cela pourrait être particulièrement utile consiste à se connecter à une machine virtuelle Windows via le port 22. Il s'agit d'une solution potentielle pour contourner la limitation de la commande az network bastion ssh, qui ne peut pas être utilisée par un client Windows natif pour se connecter à une machine virtuelle Windows.

Pour spécifier un port personnalisé, incluez le champ --resource-port dans la commande de connexion, comme illustré dans l’exemple suivant.

az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId>" --resource-port "22"

RDP vers une adresse IP de machine virtuelle Windows

Vous pouvez également vous connecter à une adresse IP privée de machine virtuelle, au lieu de l’ID de ressource. L’authentification Microsoft Entra et les ports et protocoles personnalisés ne sont pas pris en charge lors de l’utilisation de ce type de connexion. Pour plus d’informations sur les connexions basées sur IP, consultez Se connecter à une machine virtuelle : Adresses IP.

À l’aide de la commande az network bastion, remplacez --target-resource-id par --target-ip-address et l’adresse IP spécifiée pour vous connecter à votre machine virtuelle.

az network bastion rdp --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>"

SSH vers une machine virtuelle Linux

  1. Connectez-vous à votre compte Azure en utilisant az login. Si vous avez plus d'un abonnement, vous pouvez les visualiser en utilisant az account listet sélectionner l'abonnement contenant votre ressource Bastion en utilisant az account set --subscription "<subscription ID>".

  2. Connectez-vous à votre machine virtuelle Linux cible en suivant l’un des exemples ci-après. Si vous souhaitez spécifier une valeur de port personnalisée, incluez le champ --resource-port dans la commande de connexion.

    ID Microsoft Entra :

    Si vous vous connectez à une machine virtuelle compatible avec la connexion Microsoft Entra, utilisez la commande suivante. Pour plus d’informations, consultez Machines virtuelles Azure Linux et ID Microsoft Entra.

    az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "AAD"
    

    Paire de clés SSH :

    Cette extension peut être installée en exécutant az extension add --name ssh. Pour vous connecter à l’aide d’une paire de clés SSH, suivez l’exemple suivant.

    az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "ssh-key" --username "<Username>" --ssh-key "<Filepath>"
    

    Nom d’utilisateur et mot de passe :

    Si vous vous connectez à l’aide d’un nom d’utilisateur et d’un mot de passe locaux, utilisez la commande suivante. Vous serez ensuite invité à entrer le mot de passe de la machine virtuelle cible.

    az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --auth-type "password" --username "<Username>"
    
  3. Une fois que vous vous êtes connecté à votre VM cible, le client natif sur votre ordinateur s'ouvre avec votre session VM en utilisant l'extension CLI SSH (az ssh).

Ssh vers une adresse IP de machine virtuelle Linux

Vous pouvez également vous connecter à une adresse IP privée de machine virtuelle, au lieu de l’ID de ressource. L’authentification Microsoft Entra et les ports et protocoles personnalisés ne sont pas pris en charge lors de l’utilisation de ce type de connexion. Pour plus d’informations sur les connexions basées sur IP, consultez Se connecter à une machine virtuelle : Adresses IP.

À l’aide de la commande az network bastion, remplacez --target-resource-id par --target-ip-address et l’adresse IP spécifiée pour vous connecter à votre machine virtuelle.

az network bastion ssh --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>" --auth-type "ssh-key" --username "<Username>" --ssh-key "<Filepath>"

Connexion à une machine virtuelle - commande tunnel

La commande az network bastion tunnel est une autre façon de vous connecter à vos machines virtuelles. Lorsque vous utilisez cette commande, vous pouvez effectuer les opérations suivantes :

  • Connectez-vous à partir de clients natifs sur des ordinateurs locaux non Windows. (Par exemple, un ordinateur Linux)
  • Connectez-vous à une machine virtuelle à l’aide de SSH ou RDP. (Le tunnel bastion ne relaie pas les serveurs ou les hôtes web.)
  • Utilisez le client natif de votre choix.
  • Téléchargez des fichiers sur votre machine virtuelle cible à partir de votre ordinateur local. Le téléchargement de fichiers à partir de la machine virtuelle cible vers le client local n’est actuellement pas pris en charge pour cette commande.

Limites :

  • La connexion à l’aide d’une clé privée SSH stockée dans Azure Key Vault n’est pas prise en charge avec cette fonctionnalité. Téléchargez votre clé privée dans un fichier sur votre ordinateur local avant de vous connecter à votre machine virtuelle Linux à l’aide d’une paire de clés SSH.
  • Cette fonctionnalité n’est pas prise en charge sur Cloud Shell.

Étapes :

  1. Connectez-vous à votre compte Azure en utilisant az login. Si vous avez plus d'un abonnement, vous pouvez les visualiser en utilisant az account listet sélectionner l'abonnement contenant votre ressource Bastion en utilisant az account set --subscription "<subscription ID>".

  2. Ouvrez le tunnel vers votre machine virtuelle cible.

    az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-resource-id "<VMResourceId or VMSSInstanceResourceId>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"
    
  3. Connectez-vous à votre machine virtuelle cible en utilisant SSH ou RDP, le client natif de votre choix, et le port de la machine locale que vous avez spécifié à l'étape précédente.

    Par exemple, vous pouvez utiliser la commande suivante si le client OpenSSH est installé sur votre ordinateur local :

    ssh <username>@127.0.0.1 -p <LocalMachinePort>
    

Tunnel vers l'adresse IP d'une machine virtuelle

Vous pouvez également vous connecter à une adresse IP privée de machine virtuelle, au lieu de l’ID de ressource. L’authentification Microsoft Entra et les ports et protocoles personnalisés ne sont pas pris en charge lors de l’utilisation de ce type de connexion. Pour plus d’informations sur les connexions basées sur IP, consultez Se connecter à une machine virtuelle : Adresses IP.

À l’aide de la commande az network bastion tunnel, remplacez --target-resource-id par --target-ip-address et l’adresse IP spécifiée pour vous connecter à votre machine virtuelle.

az network bastion tunnel --name "<BastionName>" --resource-group "<ResourceGroupName>" --target-ip-address "<VMIPAddress>" --resource-port "<TargetVMPort>" --port "<LocalMachinePort>"

Tunnel à connexions multiples

  1. Ajoutez ce qui suit à votre fichier $HOME.ssh\config.

    Host tunneltunnel
      HostName 127.0.0.1
      Port 2222
      User mylogin
      StrictHostKeyChecking=No
      UserKnownHostsFile=\\.\NUL
    
  2. Ajoutez la connexion de tunnel à votre connexion de tunnel établie.

    az network bastion tunnel --name mybastion --resource-group myrg --target-resource-id /subscriptions/<mysubscription>/resourceGroups/myrg/providers/Microsoft.Compute/virtualMachines/myvm --resource-port 22 --port 22
    
  3. Créez un tunnel SSH dans le tunnel bastion.

    ssh -L 2222:127.0.0.1:22 mylogin@127.0.0.1
    
  4. Utilisez VS Code pour vous connecter à votre connexion de tunnel.

Étapes suivantes

Charger ou télécharger des fichiers