Configurer des clés de chiffrement pour un serveur
Vous pouvez configurer des clés de chiffrement pour chiffrer vos mots de passe de serveur. Il s'agit de 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 lors de la réimagerie d'un serveur existant. Vous pouvez utiliser une clé de chiffrement avec plusieurs serveurs.
L'utilisation d'une clé de chiffrement est facultative. Toutefois, une fois que vous avez configuré une clé de chiffrement, vous devez l'utiliser. Vous ne pouvez pas modifier ce paramètre. Toutefois, vous pouvez modifier la clé ou sa version.
Cette fonctionnalité n'est disponible que pour les systèmes d'exploitation Linux compatibles avec la solution Bare Metal.
Avant de commencer
Créez une clé de chiffrement à l'aide de Cloud KMS.
Pour créer une clé de chiffrement, procédez comme suit:
Dans le projet dans lequel vous souhaitez créer la clé, activez l'API Cloud KMS.
N'effectuez cette opération qu'une seule fois par projet.
Attribuez les rôles suivants à votre compte de service solution Bare Metal. N'effectuez cette opération qu'une seule fois par projet.
roles/cloudkms.viewer
: vérifiez queCryptoKeyVersion
est disponible.roles/cloudkms.publicKeyViewer
: récupère une clé publique.
Pour savoir comment attribuer un rôle, consultez la section Attribuer des rôles à 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: projet contenant votre clé Cloud KMS
- PROJECT_NUMBER: projet contenant votre serveur de solution Bare Metal
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 solution Bare Metal lors de son provisionnement via le formulaire d'accueil de la console Google Cloud.
Pour configurer une clé de chiffrement lors du provisionnement d'un serveur, consultez la section Saisir vos sélections à l'aide du formulaire d'entrée Google Cloud Console.
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éimagerie d'un serveur, consultez la section 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
Accédez à la page Serveurs.
Cliquez sur le nom du serveur.
Sur la page Détails du serveur, affichez la clé de chiffrement dans le champ Clé de chiffrement du mot de passe.
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 solution Bare Metal
Déchiffrer un mot de passe
Pour obtenir le mot de passe brut, procédez comme suit:
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
oucustomeradmin
. - ENCRYPTED_PASSWORD_FILE: 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 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é depuis 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: 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 chiffré
Exemple :
cat encrypted_password | tr -d ' \n' | base64 -d > ciphertext
Déchiffrez le mot de passe. Suivez la procédure décrite dans Décrypter des données.