Ce document explique comment configurer OS Login, avec ou sans authentification à deux facteurs (A2F).
OS Login vous permet de contrôler l'accès aux instances de machine virtuelle (VM) en fonction des autorisations IAM. Vous pouvez utiliser OS Login avec ou sans l'authentification A2F, mais vous ne pouvez pas utiliser cette dernière sans OS Login. Pour en savoir plus sur OS Login et l'authentification A2F d'OS Login, y compris sur les types de questions d'authentification compatibles avec OS Login, consultez la section À propos d'OS Login.
Avant de commencer
- Si vous souhaitez utiliser l'authentification A2F d'OS Login, activez-la sur votre domaine ou votre compte :
-
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 :
Sélectionnez l'onglet correspondant à la façon dont vous prévoyez d'utiliser les exemples de cette page :
Console
Lorsque vous utilisez la console Google Cloud pour accéder aux services et aux API Google Cloud, vous n'avez pas besoin de configurer l'authentification.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Définissez une région et une zone par défaut.
Terraform
Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
-
Limites
OS Login n'est pas compatible avec les VM suivantes :- VM Windows Server et SQL Server
- VM Fedora CoreOS. Pour gérer l'accès aux instances pour des VM créées à l'aide de ces images, utilisez le système Ignition de Fedora CoreOS.
Attribuer des rôles IAM OS Login
Attribuez tous les rôles IAM requis aux utilisateurs qui se connectent aux VM pour lesquelles OS Login est activé.
Rôle | Utilisateurs requis | Niveau d'attribution |
---|---|---|
roles/compute.osLogin ou roles/compute.osAdminLogin |
Tous les utilisateurs |
Si un utilisateur a besoin d'un accès SSH à partir de la console Google Cloud ou de Google Cloud CLI, vous devez attribuer ces rôles au niveau du projet, ou également attribuer un rôle au niveau du projet contenant l'autorisation |
roles/iam.serviceAccountUser |
Tous les utilisateurs, si la VM dispose d'un compte de service | Sur le compte de service. |
roles/compute.osLoginExternalUser
| Les utilisateurs d'une organisation différente de la VM à laquelle ils se connectent | Sur l'organisation. Ce rôle doit être attribué par un administrateur de l'organisation. |
Activer OS Login
Vous pouvez activer OS Login ou OS Login avec une authentification à deux facteurs pour une seule VM ou pour toutes les VM d'un projet, en définissant des métadonnées OS Login.
Lorsque vous définissez les métadonnées OS Login, Compute Engine supprime les fichiers authorized_keys
de la VM et n'accepte plus les connexions à partir de clés SSH stockées dans les métadonnées du projet ou de l'instance.
Activer OS Login pour toutes les VM d'un projet
Pour activer OS Login pour toutes les VM d'un projet, définissez les valeurs suivantes dans les métadonnées du projet:
- Activez OS Login :
- Clé :
enable-oslogin
- Valeur :
TRUE
- Clé :
- (Facultatif) Activez l'authentification à deux facteurs :
- Clé :
enable-oslogin-2fa
- Valeur :
TRUE
- Clé :
Activer OS Login pour une seule VM
Pour activer OS Login pour une seule VM, définissez les valeurs suivantes dans les métadonnées d'instance :
- Activez OS Login :
- Clé :
enable-oslogin
- Valeur :
TRUE
- Clé :
- (Facultatif) Activez l'authentification à deux facteurs :
- Clé :
enable-oslogin-2fa
- Valeur :
TRUE
- Clé :
Activer OS Login lors de la création de la VM
Activez OS Login (avec éventuellement la validation en deux étapes) lors de la création d'une VM à l'aide de la console Google Cloud ou de gcloud CLI.
Console
Créez une VM qui active au démarrage OS Login, avec éventuellement l'authentification A2F, en créant une VM à partir d'une image publique et en spécifiant les configurations suivantes :
- Dans la section Mise en réseau, disques, sécurité, gestion, location unique, développez la section Sécurité.
- Développez la section Gérer l'accès.
- Sélectionnez Contrôler l'accès aux VM à l'aide des autorisations IAM.
- Facultatif : si vous souhaitez activer l'authentification A2F d'OS Login, sélectionnez Exiger la validation en deux étapes.
- Cliquez sur Créer pour créer et démarrer la VM.
gcloud
-
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.
Créez une VM qui active au démarrage OS Login, avec éventuellement l'authentification A2F, en exécutant l'une des commandes
gcloud compute instance create
suivantes :Pour activer OS Login uniquement, exécutez la commande suivante :
gcloud compute instances create VM_NAME \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --metadata enable-oslogin=TRUE
Pour activer OS Login avec l'authentification A2F, exécutez la commande suivante :
gcloud compute instances create VM_NAME \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --metadata enable-oslogin=TRUE,enable-oslogin-2fa=TRUE
Remplacez les éléments suivants :
VM_NAME
: nom de la nouvelle VM.IMAGE_FAMILY
: famille d'images d'un système d'exploitation Linux. Cette action crée la VM à partir de l'image d'OS la plus récente et non obsolète. Pour toutes les familles d'images publiques, consultez la page Détails des systèmes d'exploitation.IMAGE_PROJECT
: projet d'image contenant la famille d''images. Chaque système d'exploitation possède son propre projet d'image. Pour tous les projets d'images publiques, consultez la page Détails des systèmes d'exploitation.
Terraform
Vous pouvez appliquer les valeurs de métadonnées à vos projets ou VM en utilisant l'une des options suivantes :
Option 1 : définissez
enable-oslogin
dans les métadonnées à l'échelle du projet afin d'appliquer ce paramètre à toutes les VM de votre projet.Utilisez la ressource Terraform
google_compute_project_metadata
et définissez une valeur de métadonnées pour laquelleoslogin=TRUE
:Vous pouvez également définir
enable-oslogin
surFALSE
pour désactiver la connexion au système d'exploitation.Option 2: définissez
enable-oslogin
dans les métadonnées d'une VM nouvelle ou existante.Utilisez la ressource Terraform
google_compute_instance
et définissezoslogin=TRUE
. Remplacezoslogin_instance_name
par le nom de votre VM.Vous pouvez également définir
enable-oslogin
surFALSE
pour empêcher votre VM d'utiliser OS Login.
Se connecter aux VM pour lesquelles OS Login est activé
Connectez-vous à des VM sur lesquelles OS Login est activé à l'aide des méthodes décrites dans la section Se connecter à des VM Linux.
Lorsque vous vous connectez à des VM pour lesquelles OS Login est activé, Compute Engine utilise le nom d'utilisateur que votre administrateur d'organisation a configuré pour vous.
Si l'administrateur de votre organisation n'a pas configuré de nom d'utilisateur pour vous, Compute Engine génère un nom d'utilisateur au format USERNAME_DOMAIN_SUFFIX
.
Pour en savoir plus sur les noms d'utilisateur, consultez la page Fonctionnement d'OS Login.
Lorsque vous vous connectez à des VM sur lesquelles OS Login est activé avec l'authentification A2F, un message basé sur la méthode de validation en deux étapes ou le type de question d'authentification que vous avez sélectionné s'affiche. Pour la méthode par invite téléphonique, acceptez les invites sur votre téléphone ou tablette pour continuer. Pour les autres méthodes, entrez votre code de sécurité ou votre mot de passe à usage unique.
Résoudre les problèmes liés à OS Login
Pour connaître les méthodes de diagnostic et de résolution des erreurs liées à OS Login, consultez la section Résoudre les problèmes liés à OS Login.
Étapes suivantes
- Découvrez comment les connexions SSH aux VM Linux fonctionnent sur Compute Engine.
- Découvrez comment utiliser SSH avec des clés de sécurité pour restreindre davantage l'accès aux VM.