Configura claves de encriptación para un servidor
Puedes configurar claves de encriptación para encriptar las contraseñas del servidor. Estas claves son claves de encriptación administradas por el cliente (CMEK) que puedes administrar con Cloud Key Management Service (Cloud KMS). Puedes configurarlas durante el aprovisionamiento de un servidor nuevo o mientras a uno existente. Puedes usar una clave de encriptación con varios servidores.
Usar una clave de encriptación es opcional. Sin embargo, una vez configurada la clave de encriptación, tienes que usarlo. No puedes cambiar este parámetro de configuración. Sin embargo, puedes cambiar la clave o su versión.
Esta función solo está disponible para el SO Linux compatibles con la solución Bare Metal.
Antes de comenzar
Crea una clave de encriptación con Cloud KMS.
Para crear una clave de encriptación, sigue estos pasos:
En el proyecto en el que deseas crear la clave, Habilitar la API de Cloud KMS.
Haz esto solo una vez por proyecto.
Asigna los siguientes roles a la cuenta de servicio de la solución Bare Metal. Haz esto solo una vez por proyecto.
roles/cloudkms.viewer
: Verifica que el elementoCryptoKeyVersion
está disponible para su uso.roles/cloudkms.publicKeyViewer
: Recupera una clave pública.
Para obtener información sobre cómo otorgar un rol, consulta Cómo otorgar roles en un recurso.
Para asignar estos roles, usa el comando
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
Reemplaza lo siguiente:
- KMS_PROJECT_ID: Es el proyecto que contiene tu Clave de Cloud KMS
- PROJECT_NUMBER: Es el proyecto que contiene tu Servidor de la solución Bare Metal
Crea una clave de desencriptación asimétrica.
Puedes crear tantas claves y versiones como sea necesario.
Configura claves de encriptación mientras aprovisionas un servidor
Puedes configurar una clave de encriptación para un nuevo servidor de Bare Metal Solution mientras lo aprovisionas a través del formulario de entrada de la consola de Google Cloud.
Para configurar una clave de encriptación mientras aprovisionas un servidor, consulta Usa el formulario de admisión de la consola de Google Cloud para ingresar tus selecciones.
Configura claves de encriptación mientras vuelves a crear una imagen de un servidor
Para configurar claves de encriptación mientras se vuelve a crear la imagen de un servidor, consulta Cómo cambiar el SO de un servidor.
Ver las claves de encriptación y contraseñas de un servidor
Para ver las claves de encriptación y las contraseñas de un servidor, sigue estos pasos:
Console
Ve a la página Servidores.
Haz clic en el nombre del servidor.
En la página Detalles del servidor, consulta la clave de encriptación en el campo Clave de encriptación de contraseña.
Para ver las cuentas de usuario y sus contraseñas encriptadas correspondientes, ve a la sección Cuentas de usuario.
gcloud
Usa el comando gcloud alpha bms instances auth-info
:
gcloud alpha bms instances auth-info SERVER_NAME --project=PROJECT_ID --region=REGION
Reemplaza lo siguiente:
- SERVER_NAME: Es el nombre del servidor de la solución Bare Metal.
- PROJECT_ID: El ID del proyecto
- REGION: La región del servidor de la solución Bare Metal
Cómo desencriptar una contraseña
Para obtener la contraseña sin procesar, sigue estos pasos:
Obtén el texto cifrado. Usa el
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
Reemplaza lo siguiente:
- SERVER_NAME: Es el nombre del servidor de la solución Bare Metal.
- PROJECT_ID: Es el ID del proyecto de la solución Bare Metal.
- REGION: Es la ubicación del servidor de la solución Bare Metal.
- USERNAME: El nombre de usuario de la cuenta asociada con la contraseña que deseas desencriptar. El valor es
root
ocustomeradmin
. - ENCRYPTED_PASSWORD_FILE: Es el archivo en el que guardaste la contraseña encriptada. Para evitar problemas con el formato de la contraseña después de copiarla,
quita los espacios y los caracteres de línea nueva (
'\n'
). - CIPHERTEXT_FILE: Es el nombre del archivo de texto cifrado.
Ejemplo:
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
Para obtener el texto cifrado de la contraseña copiada de la consola de Google Cloud, usa el siguiente comando:
cat ENCRYPTED_PASSWORD_FILE | tr -d ' \n' | base64 -d > CIPHERTEXT_FILE
Reemplaza lo siguiente:
- ENCRYPTED_PASSWORD_FILE: Es el archivo en el que guardaste la contraseña encriptada. Para evitar problemas con el formato de la contraseña después de copiarla, quita los espacios y los caracteres de línea nueva (
'\n'
). - CIPHERTEXT_FILE: Es el nombre del archivo de texto cifrado.
Ejemplo:
cat encrypted_password | tr -d ' \n' | base64 -d > ciphertext
Desencripta la contraseña. Sigue los pasos que se indican en Desencriptar datos.
¿Qué sigue?
- Opera el servidor de la solución Bare Metal.
- Cómo verificar el estado de un servidor
- Administrar servidores.