Ce document explique comment se connecter à une instance de machine virtuelle (VM) via son adresse IP interne à l'aide du transfert TCP d'Identity-Aware Proxy (IAP).
Le transfert TCP d'IAP vous permet d'établir un tunnel chiffré sur lequel vous pouvez transférer les connexions SSH vers les VM. Lorsque vous vous connectez à une VM qui utilise IAP, IAP encapsule la connexion SSH en HTTPS avant de transférer la connexion à la VM. Ensuite, IAP vérifie si vous disposez des autorisations IAM requises et, le cas échéant, accorde l'accès à la VM.
Si vous devez vous connecter à une VM dépourvue d'adresses IP externes et que vous ne pouvez pas utiliser IAP, consultez les autres méthodes affichées dans la section Options de connexion pour les VM internes uniquement.
Avant de commencer
- Créez une règle de pare-feu pour activer les connexions depuis IAP.
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux services et aux API Google Cloud.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine comme suit :
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- In the Google Cloud console, go to the VM instances page.
- In the list of virtual machine instances, click SSH in the row of the instance that you want to connect to.
Connectez-vous à la VM en exécutant la commande suivante :
gcloud compute ssh VM-NAME \ --tunnel-through-iap
-
Installez IAP Desktop sur votre poste de travail, si ce n'est pas déjà fait.
-
Ouvrez IAP Desktop. La fenêtre Ajouter des projets s'ouvre.
-
Lorsque vous y êtes invité, connectez-vous à l'aide du compte Google qui a accès au projet avec les VM auxquelles vous souhaitez vous connecter.
-
Dans la fenêtre Ajouter des projets, saisissez l'ID ou le nom du projet qui contient les VM auxquelles vous souhaitez vous connecter.
-
Dans la fenêtre Explorateur de projets, effectuez à nouveau un clic droit sur le nom de la VM et sélectionnez Se connecter pour vous connecter à la VM.
- Ajoutez une clé SSH à la VM si vous ne l'avez pas déjà fait.
- Si l'application PuTTY n'est pas déjà installée sur votre poste de travail, téléchargez les fichiers de package PuTTY.
Dans la console Google Cloud, accédez à la page Instances de VM et recherchez le nom de la VM à laquelle vous souhaitez vous connecter.
- Ouvrez l'application PuTTY. Une fenêtre de configuration de connexion s'affiche.
Dans le champ
Host Name
, saisissez le nom d'utilisateur associé à la clé SSH et le nom de la VM à laquelle vous souhaitez vous connecter. Utilisez le format suivant :USERNAME@VM_NAME
Remplacez les éléments suivants :
USERNAME
: Votre nom d'utilisateur. Si vous gérez vos clés SSH dans les métadonnées, le nom d'utilisateur est celui que vous avez spécifié lorsque vous avez créé la clé SSH. Pour les comptes OS Login, le nom d'utilisateur est défini dans votre profil Google. Par exemple,cloudysanfrancisco_example_com
oucloudysanfrancisco
.-
NAME
: Nom de la VM.
- Dans le menu Catégorie, accédez à Connexion > SSH > Auth.
- Dans le champ Private key file for authentication (Fichier de clé privée pour l'authentification), sélectionnez le fichier de clé SSH privée correspondant à la clé publique que vous avez ajoutée à la VM.
- Dans le menu Catégorie, accédez à Connexion > Proxy.
- Dans la section Proxy type (Type de proxy), sélectionnez Local (Local).
Dans le champ Telnet command, or local proxy command (Commande Telnet ou commande proxy locale), saisissez la commande suivante :
gcloud.cmd compute start-iap-tunnel VM_NAME PORT_NUMBER --listen-on-stdin --project=PROJECT_ID --zone=ZONE
Remplacez les éléments suivants :
VM_NAME
: nom de la VM à laquelle vous souhaitez vous connecter.PORT_NUMBER
: port sur lequel le daemon sshd s'exécute. La valeurPORT_NUMBER
par défaut est22
.PROJECT_ID
: projet qui héberge la VM à laquelle vous souhaitez vous connecter.ZONE
: zone où se trouve la VM.
- Cliquez sur Open (Ouvrir) pour vous connecter à la VM.
- Découvrez comment gérer l'accès aux VM.
- Découvrez comment transférer des fichiers vers des VM.
- Découvrez comment les connexions SSH aux VM Linux fonctionnent sur Compute Engine.
Systèmes d'exploitation compatibles
Ces méthodes de connexion sont compatibles avec toutes les images Linux publiques disponibles sur Compute Engine. Pour les images Fedora CoreOS, vous devez configurer l'accès SSH afin de pouvoir utiliser ces méthodes.
Se connecter à des VM
Pour vous connecter à une VM, suivez la procédure décrite dans l'un des onglets ci-dessous.
Console
Créez un tunnel pour les connexions SSH via l'adresse IP interne d'une VM à l'aide de "SSH dans le navigateur", comme suit :
gcloud
Créez un tunnel pour les connexions SSH via l'adresse IP interne d'une VM à l'aide de la commande
gcloud compute ssh
avec l'option--tunnel-through-iap
:In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Remplacez
VM_NAME
par le nom de la VM à laquelle vous souhaitez vous connecter.IAP Desktop
Pour vous connecter à une VM à l'aide d'IAP Desktop, procédez comme suit :
Application PuTTY
Créez un tunnel pour les connexions SSH via l'adresse IP interne d'une VM à l'aide de PuTTY, en procédant comme suit :
Dépannage
Pour connaître les méthodes de diagnostic et de résolution des échecs de connexion SSH, consultez la page Résoudre les problèmes liés à SSH.
Étapes suivantes
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/11/21 (UTC).
-