Información sobre la encriptación de vSAN
La encriptación de los datos en reposo de vSAN requiere un sistema de administración de claves (KMS). Google Cloud VMware Engine ofrece varias opciones para la administración de claves de encriptación de datos de vSAN:
- Google-owned and Google-managed encryption keys (GMEK): De forma predeterminada, la encriptación de datos de vSAN usa Google-owned and Google-managed encryption keys en Cloud Key Management Service para las nubes privadas, sin costo adicional.
- Claves de encriptación administradas por el cliente (CMEK): Puedes usar CMEK en Cloud Key Management Service para administrar claves de encriptación para nubes privadas individuales.
- KMS externo: Puedes implementar un KMS externo para la encriptación de datos en reposo de vSAN de uno de los proveedores compatibles que se indican a continuación.
Elige una solución de administración de claves
Para ayudarte a elegir una solución de administración de claves, revisa la siguiente comparación:
| Función | GMEK (predeterminado) | CMEK | KMS externo |
|---|---|---|---|
| Responsabilidad de la administración de claves | Cliente | Cliente | |
| Almacenamiento de claves | Cloud Key Management Service (proyecto de Google) | Cloud Key Management Service (proyecto del cliente) | KMS externo |
| Nivel de aislamiento | Servicio regional | Nube privada individual | Nube privada individual |
| Automatización de la rotación | Automatizado por Google | Google la automatiza cuando se rota la clave de KMS | Administrada por el cliente |
| Costo de licencia adicional | Ninguno | Se aplican cargos deGoogle Cloud KMS | Licencias de KMS de terceros |
En esta página, se explica el comportamiento de la encriptación de vSAN y se resume cómo usar un KMS externo para encriptar los datos en reposo de las máquina virtual en VMware Engine.
Encriptación de datos de vSAN
De forma predeterminada, VMware Engine habilita la encriptación de vSAN para los datos en el clúster principal y en los clústeres agregados después a la nube privada. En la encriptación de datos en reposo de vSAN, se usa una clave de encriptación de datos (DEK) que se almacena en el disco físico local del clúster después de la encriptación. La DEK es una clave de encriptación AES de 256 bits que cumple con el nivel 1 de FIPS 140-2 y que los hosts ESXi generan de forma automática. El sistema usa una clave de encriptación de claves (KEK) proporcionada por Cloud Key Management Service o un KMS externo para encriptar la DEK.
Te recomendamos inhabilitar la encriptación de vSAN de los datos en reposo, ya que puede infringir las condiciones específicas del servicio de Google Cloud VMware Engine. Cuando inhabilitas la encriptación vSAN de los datos en reposo en un clúster, la lógica de supervisión de VMware Engine genera una alerta. Para evitar que infrinjas las condiciones del servicio, esta alerta activa una acción basada en la atención al cliente de Cloud a fin de volver a habilitar la encriptación de vSAN en el clúster afectado.
De modo similar, si configuras un KMS externo, te recomendamos borrar la configuración del proveedor de claves de Cloud Key Management Service en vCenter Server.
Google-owned and Google-managed encryption keys (GMEK)
De forma predeterminada, las nubes privadas usan Google-owned and Google-managed encryption keys (GMEK). Con la GMEK, VMware Engine configura vCenter Server para conectarse a un proveedor de GMEK. VMware Engine crea una instancia del proveedor de claves por región, y este usa Cloud KMS para la encriptación de la KEK. VMware Engine administra por completo el proveedor de claves y lo configura para que tenga alta disponibilidad en todas las regiones.
El proveedor de GMEK complementa el proveedor de claves integrado en vCenter Server (en vSphere 7.0, Update 2 y versiones posteriores) y es el enfoque recomendado para los entornos de producción. El proveedor de claves integrado se ejecuta como un proceso dentro del vCenter Server, que se ejecuta en un clúster de vSphere en VMware Engine. VMware recomienda no usar el proveedor de claves integrado para encriptar el clúster que aloja vCenter Server. En su lugar, usa GMEK, CMEK o un KMS externo.
Rotación automática de claves de GMEK
Google Cloud VMware Engine activa periódicamente una rotación automática de claves de la GMEK para todos los clústeres. Esta es una tarea de mantenimiento en segundo plano que no requiere intervención del usuario y no afecta la disponibilidad del clúster.
Claves de encriptación administradas por el cliente (CMEK)
Google Cloud VMware Engine admite claves de encriptación administradas por el cliente (CMEK) para nubes privadas individuales con Cloud Key Management Service. Puedes configurar cada nube privada con una clave de CMEK distinta, en lugar de compartir una sola clave en todo el proyecto. Esto tiene los siguientes beneficios:
- Aislamiento mejorado: La vulneración o rotación de una clave para una nube privada no afecta a otras.
- Cumplimiento detallado: Asigna claves según los requisitos específicos de residencia de datos o cumplimiento de las cargas de trabajo dentro de cada nube privada.
Administra la encriptación de CMEK
Puedes configurar y administrar claves de encriptación administradas por el cliente (CMEK) para tu nube privada con la consola de Google Cloud y la API de VMware Engine. Para usar la CMEK, debes otorgar el rol de IAM roles/cloudkms.cryptoKeyEncrypterDecrypter a tu cuenta de servicio de VMware Engine (service-<var>PROJECT_NUMBER</var>@gcp-sa-vmwareengine.iam.gserviceaccount.com) para la clave de Cloud KMS específica que deseas usar. Este permiso permite que VMware Engine encripte y desencripte la clave de encriptación de claves (KEK) que protege tus datos de vSAN con la clave de Cloud KMS seleccionada en tu proyecto.
Asigna permisos de clave
Antes de habilitar la CMEK, debes asignar los permisos necesarios:
Identifica tu recurso de KMS: Ve a la página Administración de claves en la consola deGoogle Cloud y busca la clave específica de Cloud KMS que se usará para la protección de datos.
Configura roles de IAM: Otorga el rol roles/cloudkms.cryptoKeyEncrypterDecrypter a la cuenta de servicio de VMware Engine (
service-<var>PROJECT_NUMBER</var>@gcp-sa-vmwareengine.iam.gserviceaccount.com) directamente en el panel de claves de Cloud KMS.
Google Cloud Instrucciones de la consola y la API de VMware Engine para administrar la CMEK:
Consola de Google Cloud
Para configurar claves de encriptación administradas por el cliente (CMEK) con la consola de Google Cloud , haz lo siguiente:
Crea una nube privada con CMEK
Para crear una nube privada con CMEK usando la consola, haz lo siguiente: Google Cloud
En la consola de Google Cloud , ve a la página Nubes privadas.
Haz clic en Crear.
En la sección Encriptación, elige Claves de encriptación administradas por el cliente (CMEK).
Ingresa el nombre completo del recurso de tu clave de Cloud KMS.
Haz clic en Crear o Guardar.
Actualiza la clave de CMEK para una nube privada existente
Para actualizar la clave de CMEK de una nube privada existente con la consola de Google Cloud , haz lo siguiente:
En la consola de Google Cloud , ve a la página Nubes privadas.
Selecciona la nube privada existente que deseas actualizar.
En la sección Encriptación, elige Claves de encriptación administradas por el cliente (CMEK).
Ingresa el nombre completo del recurso de tu clave de Cloud KMS.
Haz clic en Crear o Guardar.
Actualiza la encriptación a GMEK para una nube privada existente
Para actualizar el tipo de encriptación a GMEK en una nube privada existente con la consola de Google Cloud , haz lo siguiente:
En la consola de Google Cloud , ve a la página Nubes privadas.
Selecciona la nube privada existente que deseas actualizar.
En la sección Encryption, elige Google-owned and Google-managed encryption keys (GMEK).
Haz clic en Crear o Guardar.
API de VMware Engine
Para usar los comandos de la API, primero reemplaza las siguientes variables por los valores de tu entorno:
PROJECT_ID: Es el ID del proyecto de Google Cloud .LOCATION: Es la región de VMware Engine, comous-east4.PC_ID: Es el ID de tu nueva nube privada.NETWORK_ID: Es el ID de tu red de VPC.CIDR_RANGE: Es el rango de CIDR de administración para la nube privada.CLUSTER_ID: Es el ID del clúster de administración.NODE_TYPE: Es el tipo de nodo, por ejemplo,standard-72.COUNT: Es la cantidad de nodos en el clúster.RING: El nombre del llavero de claves de Cloud KMS.KEY: Es el nombre de la clave criptográfica de Cloud KMS.PC_NAME: Es el nombre de la nube privada existente.
Para crear una nube privada con CMEK, usa el método privateClouds.create y especifica el parámetro encryptionConfig:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
"https://vmwareengine.googleapis.com/v1/projects//locations//privateClouds?private_cloud_id=" \
-d '{
"networkConfig": {
"vmwareEngineNetwork": "projects//locations/global/vmwareEngineNetworks/",
"managementCidr": ""
},
"managementCluster": {
"clusterId": "",
"nodeTypeConfigs": {
"": {
"nodeCount":
}
}
},
"encryptionConfig": {
"cryptoKeyName": "projects//locations//keyRings//cryptoKeys/"
}
}'
Para actualizar la clave de CMEK de una nube privada existente, usa el método privateClouds.patch:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
"https://vmwareengine.googleapis.com/v1/projects//locations//privateClouds/?updateMask=encryptionConfig" \
-d '{
"encryptionConfig": {
"cryptoKeyName": "projects//locations//keyRings//cryptoKeys/"
}
}'
Para volver a cambiar una nube privada existente a GMEK (Google-owned and Google-managed encryption keys), usa el método privateClouds.patch con un objeto encryptionConfig vacío:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
"https://vmwareengine.googleapis.com/v1/projects//locations//privateClouds/?updateMask=encryptionConfig" \
-d '\''{
"encryptionConfig": {}
}'\''
Información sobre las restricciones y limitaciones de la CMEK
- Requisitos regionales: Tanto la nube privada como la clave de Cloud KMS seleccionada deben residir en la misma región. Ten en cuenta que las claves globales de Google Cloud KMS no son compatibles con la encriptación de vSAN.
- Disponibilidad de la clave: Si no se puede acceder a la clave de encriptación porque está inhabilitada o revocada, fallarán todas las operaciones de vSAN dependientes. Los procedimientos vitales, como los reinicios del host y el reabastecimiento superficial de claves, no pueden continuar hasta que se restablezca correctamente el acceso a las claves.
Eficiencia operativa con la rotación automática de KEK de CMEK
Para las organizaciones que eligen la CMEK, la función de rotación automática de KEK para la encriptación de datos en reposo de vSAN automatiza las tareas de seguridad manuales:
- Sincronización automática: El sistema supervisa Cloud KMS y detecta automáticamente las rotaciones de claves.
- Rotación de KEK en segundo plano sin interrupciones: Tras la rotación, el sistema inicia una rotación de KEK superficial, lo que garantiza una protección continua sin intervención manual en vCenter. Esta operación actualiza la clave de encriptación de claves para tus claves de encriptación de datos (DEK) con una nueva clave de encriptación de claves (KEK). Dado que las DEK encriptan tus datos de vSAN directamente, este proceso no requiere una nueva encriptación completa de tus datos de vSAN.
- Administración sin tiempo de inactividad: El sistema genera y aplica KEK en segundo plano, lo que mantiene el rendimiento y la disponibilidad para las cargas de trabajo. Por lo general, este proceso se completa en un plazo de 48 horas después de la rotación de una clave de Cloud KMS.
Requisito para máquinas virtuales encriptadas
Puedes administrar las claves de encriptación de las VMs con el proveedorGoogle-owned and managed key predeterminado o Cloud Key Management Service.
Si habilitas la encriptación de VM (o vTPM) para cualquier VM de tu nube privada y usas un KMS para administrar las claves de encriptación, debes volver a encriptar (cambiar la clave de forma superficial) cada VM después de rotar la clave del KMS.
Un nuevo proceso de clave superficial solo reemplaza la clave de encriptación de claves (KEK) y no cambia la clave de encriptación de datos (DEK) de las VMs. Por lo general, se activa una reclave superficial con la acción Re-encrypt en vSphere Client.
Durante esta operación, el sistema vuelve a envolver (volver a encriptar) la DEK existente con una nueva KEK. Este proceso es rápido porque no vuelve a escribir los datos reales en el disco, sino que solo actualiza el pequeño paquete de claves que contiene la DEK encriptada. Para obtener más información, consulta la siguiente documentación de VMware:
Riesgos de no volver a generar las claves de las VMs encriptadas
Si no vuelves a generar la clave de las VMs encriptadas antes de borrar la versión de la clave de KMS rotada (anterior), se pueden producir los siguientes problemas:
- vMotions fallidas: Los hosts ESXi no pueden desencriptar las DEK de la VM durante vMotion si reinicias los hosts de destino o los agregas al clúster después de la rotación de la clave del KMS, pero antes de volver a generar la clave de la VM.
- Fallas de encendido: Si un host se reinicia o borra su caché de claves local, no puede volver a adquirir claves del KMS. Si borraste las claves requeridas del KMS, el host no podrá desencriptar la DEK, lo que impedirá que se enciendan las VMs encriptadas.
Pasos para realizar una operación de cambio de clave en las VMs de cargas de trabajo
- En vSphere Client, haz clic con el botón derecho en la VM.
- Selecciona VM Policies > Re-encrypt.
- Confirma la solicitud de nuevo cifrado en el diálogo que aparece.
- Espera a que se complete la tarea.
- Para verificar el cambio de clave, migra la VM a un host que reiniciaste o agregaste al clúster después de la rotación de claves del KMS.
KMS externo
De manera opcional, puedes seleccionar una solución de KMS de terceros que cumpla con KMIP 1.1 y que esté certificada por VMware para vSAN. Los siguientes proveedores validaron la solución de KMS con VMware Engine y publicaron guías de implementación y declaraciones de asistencia:
Para obtener instrucciones de configuración, consulta los siguientes documentos:
- Configurar encriptación de vSAN con Fortanix KMS
- Configuración de la encriptación de SANv mediante CipherTrust Manager
- Configura la encriptación de vSAN mediante HyTrust KeyControl
Usa un proveedor compatible
Cada implementación de un KMS externo requiere los mismos pasos básicos:
- Crea un Google Cloud proyecto o usa uno existente.
- Crea una red de nube privada virtual (VPC) nueva o elige una red de VPC existente.
- Conecta la red de VPC seleccionada a la red de VMware Engine.
Luego, implementa el KMS en una instancia de VM de Compute Engine:
- Configura los permisos de IAM necesarios para implementar instancias de VM de Compute Engine.
- Implementa KMS en Compute Engine.
- Establece la confianza entre vCenter y KMS
- Habilita la encriptación de datos de vSAN.
En las siguientes secciones, se describe brevemente este proceso de uso de uno de los proveedores compatibles.
Configura los permisos de IAM
Necesitas permisos suficientes para implementar instancias de VM de Compute Engine en un proyecto Google Cloud y una red de VPC determinados, conectar la red de VPC a VMware Engine y configurar las reglas de firewall para la red de VPC.
Los propietarios del proyecto y las principales de IAM con la función de Administrador de red pueden crear rangos de IP asignados y administrar conexiones privadas. Para obtener más información sobre las funciones, consulta Funciones de IAM de Compute Engine.
Implementa Key Management Server en Compute Engine
Algunas soluciones de KMS están disponibles en un factor de forma de dispositivo en Google Cloud Marketplace. Para implementar estos dispositivos, importa el OVA directamente en tu red de VPC o Google Cloud proyecto.
Para KMS basado en software, implementa una instancia de VM de Compute Engine con la configuración (recuento de CPU virtual, vMem y discos) recomendada por el proveedor de KMS. Instala el software de KMS en el sistema operativo invitado. Crea la instancia de VM de Compute Engine en una red de VPC que esté conectada a la red de VMware Engine.
Establece la confianza entre vCenter y KMS
Después de implementar KMS en Compute Engine, configura el vCenter de VMware Engine para recuperar las claves de encriptación de KMS.
Primero, agrega los detalles de la conexión de KMS a vCenter. Para establecer la confianza entre vCenter y KMS, sigue estos pasos: Para establecer la confianza entre vCenter y KMS, sigue estos pasos:
- Genera un certificado en vCenter.
- Firma mediante un token o una clave generados por el KMS.
- Proporciona o sube ese certificado a vCenter.
- Confirma el estado de la conectividad, comprueba la configuración y el estado de KMS en la página de configuración del servidor de vCenter.
Habilita la encriptación de datos de vSAN
En vCenter, el usuario predeterminado CloudOwner tiene privilegios suficientes para habilitar y administrar la encriptación de datos vSAN.
Si deseas cambiar de un KMS externo al proveedor predeterminadoGoogle-owned and managed key , sigue los pasos para cambiar el proveedor de claves proporcionado en la documentación de VMware Configura y administra un proveedor de claves estándar.
¿Qué sigue?
- Obtén información sobre las verificaciones de estado de conexión de KMS de vSAN.
- Obtén información acerca de la encriptación de vSAN 7.0.