Independientemente del proveedor de claves que utilice, con cifrado de máquinas virtuales de vSphere puede crear máquinas virtuales cifradas y cifrar máquinas virtuales existentes. Debido a que se cifran todos los archivos de máquinas virtuales con información confidencial, la máquina virtual está protegida. Solo los administradores con privilegios de cifrado puede realizar tareas de cifrado y descifrado.

Qué almacenamiento admite el cifrado de máquinas virtuales de vSphere

El cifrado de máquinas virtuales de vSphere funciona con cualquier tipo de almacenamiento compatible (NFS, iSCSI, canal de fibra, etc.), incluido VMware vSAN. Para obtener más información sobre el uso del cifrado en un clúster de vSAN, consulte la documentación de Administrar VMware vSAN.

El cifrado de máquinas virtuales de vSphere y vSAN utilizan las mismas bibliotecas de cifrado, pero tienen perfiles diferentes. El cifrado de máquina virtual corresponde a un cifrado por máquina virtual y vSAN es un cifrado de nivel de almacén de datos.

Claves de cifrado y proveedores de claves de vSphere

vSphere utiliza dos niveles de cifrado en forma de una clave de cifrado de claves (Key Encryption Key, KEK) y una clave de cifrado de datos (Data Encryption Key, DEK). En pocas palabras, un host ESXi genera una DEK para cifrar máquinas virtuales y discos. Un servidor de claves proporciona la KEK y cifra (o "encapsula") la DEK. La KEK se cifra mediante el algoritmo AES256 y la DEK se cifra mediante el algoritmo XTS-AES-256. En función del tipo de proveedor de claves, se utilizan diferentes métodos para crear y administrar la DEK y la KEK.

El proveedor de claves estándar funciona de la siguiente manera.
  1. El host ESXi genera y usa claves internas para cifrar máquinas y discos virtuales. Estas claves se utilizan como DEK.
  2. vCenter Server Solicitudes de claves del servidor de claves (KMS). Estas claves se utilizan como KEK. vCenter Server almacena solo el identificador de cada KEK, pero no la clave en sí.
  3. ESXi utiliza la KEK para cifrar las claves internas y almacena la clave interna cifrada en el disco. ESXi no almacena la KEK en el disco. Si un host se reinicia, vCenter Server solicita la KEK con el identificador correspondiente del servidor de claves y la pone a disposición de ESXi. De este modo, ESXi puede descifrar las claves internas según sea necesario.

El proveedor de claves de confianza vSphere Trust Authority funciona de la siguiente manera.

  1. La instancia de vCenter Server del clúster de confianza comprueba si el proveedor de claves de confianza predeterminado está accesible para el host ESXi en el que se va a crear la máquina virtual cifrada.
  2. La instancia de vCenter Server del clúster de confianza agrega el proveedor de claves de confianza a la máquina virtual ConfigSpec.
  3. La solicitud de creación de la máquina virtual se envía al host ESXi.
  4. Si no hay un token de atestación disponible para el host ESXi, solicita uno al servicio de atestación.
  5. El servicio de proveedor de claves valida el token de atestación y crea una clave de cifrado de claves que se enviará al host ESXi. La KEK está envuelta (cifrada) con la clave principal que está configurada en el proveedor de claves. El texto cifrado y el texto sin formato de la KEK se devuelven al host de confianza.
  6. El host ESXi genera una DEK para cifrar los discos de máquina virtual.
  7. La KEK se utiliza para envolver las DEK que genera el host ESXi, y el texto cifrado del proveedor de claves se almacena junto con los datos cifrados.
  8. La máquina virtual está cifrada y se escribe en el almacenamiento.
Nota: Si elimina o cancela el registro de una máquina virtual cifrada, el host ESXi y el clúster quitan la KEK de la memoria caché. El host ESXi ya no puede utilizar la KEK. Este comportamiento es el mismo para los proveedores de claves estándar y los proveedores de claves de confianza.

vSphere Native Key Provider funciona de la siguiente manera.

  1. Cuando se crea el proveedor de claves, vCenter Server genera una clave principal y la inserta en ESXi hosts del clúster. (No hay ningún servidor de claves externo implicado).
  2. Los hosts ESXi generan una DEK a petición.
  3. Cuando se realiza una actividad de cifrado, los datos se cifran con la DEK.

    Las DEK cifradas se almacenan junto con los datos cifrados.

  4. Al descifrar datos, se utiliza la clave principal para descifrar la DEK y, a continuación, los datos.

Elementos cifrados

El cifrado de máquinas virtuales de vSphere admite el cifrado de archivos de máquinas virtuales, archivos de discos virtuales y archivos de volcados de núcleo.
Archivos de la máquina virtual
Se cifra la mayoría de los archivos de máquinas virtuales, en particular los datos de invitados que no se almacenan en el archivo VMDK. Este conjunto de archivos incluye, entre otros, los archivos de NVRAM, VSWP y VMSN. La clave que del proveedor de claves desbloquea un paquete cifrado en el archivo VMX que contiene claves internas y otros secretos. La recuperación de claves funciona de la siguiente manera, según el proveedor de claves:
  • Proveedor de claves estándar: vCenter Server administra las claves desde el servidor de claves y los hosts ESXi no pueden acceder directamente al proveedor de claves. Los hosts esperan a vCenter Server para insertar las claves.
  • Proveedor de claves de confianza y proveedor de claves nativo de vSphere: los hosts ESXi acceden directamente a los proveedores de claves y, por lo tanto, recupera las claves solicitadas directamente desde el servicio de vSphere Trust Authority o desde el proveedor de claves nativo de vSphere.
Cuando se utiliza vSphere Client para crear una máquina virtual cifrada, puede cifrar y descifrar discos virtuales de manera independiente de archivos de máquinas virtuales. Todos los discos virtuales están cifrados de forma predeterminada. Para otras tareas de cifrado, como el cifrado de una máquina virtual existente, puede cifrar y descifrar discos virtuales de manera independiente de los archivos de máquinas virtuales.
Nota: No se puede asociar un disco virtual cifrado con una máquina virtual que no está cifrada.
Archivos de disco virtual
Los datos de un archivo de disco virtual cifrado (VMDK) jamás se escriben en texto no cifrado en el almacenamiento o el disco físico, ni tampoco se transmiten por la red en texto no cifrado. El archivo de descriptor de VMDK incluye en su mayoría texto no cifrado, pero contiene un identificador de clave para la KEK y la clave interna (DEK) en el paquete cifrado.
Puede usar vSphere API para realizar una operación de repetición de cifrado superficial con una nueva KEK, o bien una operación de repetición de cifrado profunda con una nueva clave interna.
Volcados de núcleos
Los volcados de núcleo en un host ESXi en el que se habilitó el modo de cifrado siempre están cifrados. Consulte Cifrado de máquinas virtuales de vSphere y volcados de núcleo. Los volcados de núcleo en el sistema vCenter Server no están cifrados. Proteja el acceso al sistema vCenter Server.
Nota: Para obtener información sobre algunas limitaciones relacionadas con dispositivos y características con las que puede interoperar el cifrado de máquinas virtuales de vSphere, consulte Interoperabilidad del cifrado de máquinas virtuales.

Elementos no cifrados

Algunos de los archivos relacionados con una máquina virtual no se cifran o se cifran parcialmente.
Archivos de registro
Los archivos de registro no se cifran, ya que no contienen datos confidenciales.
Archivos de configuración de máquinas virtuales
La mayoría de la información de configuración de máquinas virtuales, almacenada en los archivos VMX y VMSD, no está cifrada.
Archivo de descriptor de discos virtuales
Para admitir la administración de discos sin una clave, la mayor parte del archivo de descriptor de discos virtuales no se cifra.

Usuarios que pueden realizar operaciones criptográficas

Solo los usuarios a los que se asignan privilegios de Operaciones criptográficas pueden realizar operaciones criptográficas. El conjunto de privilegios tiene una granularidad fina. La función del sistema predeterminada Administrador incluye todos los privilegios de Operaciones criptográficas. La función Sin administrador de criptografía admite todos los privilegios de Administrador, salvo los privilegios de Operaciones criptográficas.

Además de usar el Criptógrafo.*, privilegios, el proveedor de claves nativo de vSphere puede utilizar el privilegio Cryptographer.ReadKeyServersInfo, que es específico de los proveedores de claves nativos de vSphere.

Consulte Privilegios de operaciones de cifrado para obtener más información.

Puede crear funciones personalizadas adicionales, por ejemplo, para permitir que un grupo de usuarios cifre máquinas virtuales, pero impedirles que las descifren.

Realización de operaciones criptográficas

vSphere Client admite muchas de las operaciones criptográficas. Para otras tareas, puede usar vSphere API.

Tabla 1. Interfaces para realizar operaciones criptográficas
Interfaz Operaciones Información
vSphere Client Crear una máquina virtual cifrada

Cifrar y descifrar máquinas virtuales

Este libro.
PowerCLI Crear una máquina virtual cifrada

Cifrar y descifrar máquinas virtuales

Configuración de vSphere Trust Authority

Referencia de cmdlets VMware PowerCLI
vSphere Web Services SDK Crear una máquina virtual cifrada

Cifrar y descifrar máquinas virtuales

Realice una operación de repetición de cifrado profunda de una máquina virtual (con otra DEK).

Realice una operación de repetición de cifrado superficial de una máquina virtual (con otra KEK).

Guía de programación de vSphere Web Services SDK

Referencia de vSphere Web Services API

crypto-util Descifrar volcados de núcleo cifrados

Comprobar si los archivos están cifrados

Realizar otras tareas de administración directamente en el host ESXi

Ayuda de línea de comandos.

Cifrado de máquinas virtuales de vSphere y volcados de núcleo

Repetir cifrado de máquinas virtuales

Puede repetir el cifrado de una máquina virtual con nuevas claves, por ejemplo, en caso de que una clave caduque o se ponga en riesgo la seguridad. Se encuentran disponibles las siguientes opciones:

  • Una repetición de cifrado profunda, que reemplaza la clave de cifrado de disco (Disk Encryption Key, DEK) y la clave de cifrado de claves (Key Encryption Key, KEK)
  • Una repetición de cifrado superficial, que reemplaza solo la KEK

Debe realizar una repetición de cifrado de una máquina virtual mediante la API. Consulte Guía de programación de vSphere Web Services SDK.

Para una repetición de cifrado profunda, es necesario que la máquina virtual esté desconectada y no contenga instantáneas. Puede realizar una operación de repetición de cifrado superficial mientras la máquina virtual esté encendida y si esta contiene instantáneas. La repetición de cifrado superficial de una máquina virtual cifrada con instantáneas solo se permite en una única rama de instantáneas (cadena de discos). No se admiten varias ramas de instantáneas. Además, no se admite repetición de cifrado superficial en un clon vinculado de una máquina virtual o un disco. Si se produce un error en la repetición de cifrado superficial antes de actualizar todos los vínculos de la cadena con la nueva KEK, aún se puede acceder a la máquina virtual cifrada si tiene la KEK antigua y la nueva. Sin embargo, lo mejor es volver a ejecutar la operación de repetición de cifrado superficial antes de realizar operaciones de instantáneas.