Configurer des clés de chiffrement pour un serveur

Vous pouvez configurer des clés de chiffrement pour chiffrer les mots de passe de vos serveurs. Ces clés sont des clés de chiffrement gérées par le client (CMEK) que vous pouvez gérer à l'aide de Cloud Key Management Service (Cloud KMS). Vous pouvez les définir lors du provisionnement d'un nouveau serveur ou pendant pour recréer une image existante. Vous pouvez utiliser une clé de chiffrement avec plusieurs serveurs.

L'utilisation d'une clé de chiffrement est facultative. Cependant, une fois que vous avez configuré une clé de chiffrement, vous devez l'utiliser. Vous ne pouvez pas modifier ce paramètre. Vous pouvez toutefois modifier le paramètre ou sa version.

Cette fonctionnalité n'est disponible Systèmes d'exploitation Linux compatibles avec la solution Bare Metal

Avant de commencer

  1. À l'aide de Cloud KMS, créez une clé de chiffrement.

    Pour créer une clé de chiffrement, procédez comme suit:

    1. Dans le projet dans lequel vous voulez créer la clé, Activez l'API Cloud KMS.

      Effectuez cette opération une seule fois par projet.

    2. Attribuer les rôles suivants à votre compte de service de solution Bare Metal. Effectuez cette opération une seule fois par projet.

      • roles/cloudkms.viewer : vérifiez que CryptoKeyVersion est disponible.
      • roles/cloudkms.publicKeyViewer: récupère une clé publique.

      Pour savoir comment attribuer un rôle, consultez Attribuer des rôles sur une ressource

      Pour attribuer ces rôles, utilisez la commande gcloud projects add-iam-policy-binding.

      gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
      --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bms.iam.gserviceaccount.com \
      --role roles/cloudkms.publicKeyViewer
      
      gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
      --member serviceAccount:service-PROJECT_NUMBER@gcp-sa-bms.iam.gserviceaccount.com \
      --role roles/cloudkms.viewer
      

      Remplacez les éléments suivants :

      • KMS_PROJECT_ID: le projet contenant vos Clé Cloud KMS
      • PROJECT_NUMBER: le projet contenant vos Serveur de solution Bare Metal
    3. Créez une clé de déchiffrement asymétrique.

      Vous pouvez créer autant de clés et de versions que nécessaire.

Configurer des clés de chiffrement lors du provisionnement d'un serveur

Vous pouvez configurer une clé de chiffrement pour un nouveau serveur de solution Bare Metal pendant que via le formulaire d'enregistrement de la console Google Cloud.

Pour configurer une clé de chiffrement lors du provisionnement d'un serveur, consultez Utilisez le formulaire d'enregistrement de la console Google Cloud pour saisir vos sélections.

Configurer des clés de chiffrement lors de la réimagerie d'un serveur

Pour configurer des clés de chiffrement lors de la réinitialisation d'un serveur, consultez Modifier le système d'exploitation d'un serveur

Afficher les clés de chiffrement et les mots de passe d'un serveur

Pour afficher les clés de chiffrement et les mots de passe d'un serveur, procédez comme suit:

Console

  1. Accédez à la page Serveurs.

    Accéder à "Serveurs"

  2. Cliquez sur le nom du serveur.

    Sur la page Informations sur le serveur, affichez la clé de chiffrement dans Clé de chiffrement du mot de passe.

  3. Pour afficher les comptes utilisateur et les mots de passe chiffrés correspondants, accédez à la section Comptes utilisateur.

gcloud

Exécutez la commande gcloud alpha bms instances auth-info :

gcloud alpha bms instances auth-info SERVER_NAME --project=PROJECT_ID --region=REGION

Remplacez les éléments suivants :

  • SERVER_NAME : nom du serveur de solution Bare Metal
  • PROJECT_ID : ID du projet
  • REGION: région du serveur de la solution Bare Metal

Déchiffrer un mot de passe

Pour obtenir le mot de passe brut, procédez comme suit:

  1. Obtenez le texte chiffré. Exécutez la commande gcloud alpha bms instances auth-info.

    gcloud alpha bms instances auth-info SERVER_NAME \
    --project=PROJECT_ID \
    --region=REGION \
    --format='value(userAccounts.USERNAME.ENCRYPTED_PASSWORD_FILE)' | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
    

    Remplacez les éléments suivants :

    • SERVER_NAME: nom de votre serveur de solution Bare Metal
    • PROJECT_ID: ID de votre projet de solution Bare Metal
    • REGION: emplacement de votre serveur de solution Bare Metal
    • USERNAME: nom d'utilisateur du compte associé au mot de passe que vous souhaitez déchiffrer. La valeur est root ou customeradmin
    • ENCRYPTED_PASSWORD_FILE: fichier dans lequel vous avez enregistré l'élément chiffré mot de passe. Pour éviter les problèmes de format du mot de passe après l'avoir copié, Supprimez les espaces et les caractères de retour à la ligne ('\n').
    • CIPHERTEXT_FILE : nom du fichier chiffré

    Exemple :

    gcloud alpha bms instances auth-info my-instance \
    --region=europe-west3 \
    --project=project-testing \
    --format='value(userAccounts.customeradmin.encryptedPassword)' | tr -d ' \n' | base64 -d > ciphertext
    

    Pour obtenir le texte chiffré à partir du mot de passe copié à partir de la console Google Cloud, exécutez la commande suivante:

    cat ENCRYPTED_PASSWORD_FILE | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
    

    Remplacez les éléments suivants :

    • ENCRYPTED_PASSWORD_FILE: le fichier dans lequel vous avez enregistré le mot de passe chiffré. Pour éviter tout problème de format du mot de passe après l'avoir copié, supprimez les espaces et les caractères de retour à la ligne ('\n').
    • CIPHERTEXT_FILE: nom du fichier en texte chiffré

    Exemple :

    cat encrypted_password | tr -d ' \n' | base64 -d > ciphertext
    
  2. Déchiffrez le mot de passe. Suivez la procédure décrite dans Déchiffrer des données.

Étape suivante