Opciones de cifrado para proteger las máquinas virtuales Linux y Windows
Supongamos que los socios comerciales de su empresa tienen directivas de seguridad que requieren que sus datos comerciales estén protegidos con un cifrado seguro. En la empresa, se usa una aplicación B2B que se ejecuta en los servidores Windows y almacena datos en el disco de datos del servidor. Ahora que va a realizar la transición a la nube, debe demostrar a sus socios comerciales que usuarios, dispositivos o aplicaciones no autorizados no pueden acceder a los datos almacenados en las máquinas virtuales de Azure. Debe decidir una estrategia para implementar el cifrado de los datos B2B.
Los requisitos de auditoría determinan que las claves de cifrado se administren de forma interna y no por terceros. También quiere asegurarse de que se mantiene el rendimiento y la capacidad de administración de los servidores basados en Azure. Por lo tanto, antes de implementar el cifrado, quiere asegurarse de que no haya un impacto en el rendimiento.
¿Qué es el cifrado?
El cifrado es la conversión de información significativa en algo que parezca no tener sentido, por ejemplo, una secuencia aleatoria de letras y números. El proceso de cifrado usa algún tipo de clave como parte del algoritmo que crea los datos cifrados. También se necesita una clave para realizar el descifrado. Las claves pueden ser simétricas, donde se usa la misma clave para el cifrado y el descifrado, o bien asimétricas, donde se usan claves diferentes. Un ejemplo de esto son los pares de claves pública-privada que se usan en los certificados digitales.
Cifrado simétrico
Los algoritmos que usan claves simétricas, como el Estándar de cifrado avanzado (AES), son normalmente más rápidos que los algoritmos de clave pública y, a menudo, se usan para proteger almacenes de datos de gran tamaño. Como solo hay una clave, debe haber procedimientos para impedir que la clave se conozca públicamente.
Cifrado asimétrico
Con los algoritmos asimétricos, únicamente la clave privada del emparejamiento debe mantenerse privada y segura. Como su nombre sugiere, la clave pública se puede poner a disposición de cualquier persona sin poner en peligro los datos cifrados. Sin embargo, el inconveniente de los algoritmos de clave pública es que son más lentos que los algoritmos simétricos y no se pueden usar para cifrar grandes cantidades de datos.
Administración de claves
En Azure, las claves de cifrado las puede administrar Microsoft o el cliente. A menudo, la demanda de claves administradas por el cliente procede de las organizaciones que necesitan demostrar el cumplimiento con HIPAA u otras normativas. Dicho cumplimiento puede requerir que se registre el acceso a las claves y que se realicen y registren cambios regulares de las claves.
Tecnologías de Azure Disk Encryption
Las tecnologías principales de protección de discos basadas en el cifrado para máquinas virtuales de Azure son:
- Azure Storage Service Encryption (SSE)
- Azure Disk Encryption (ADE)
SSE se ejecuta en los discos físicos del centro de datos. Si alguien accediera directamente al disco físico, los datos se cifrarían. Cuando se accede a los datos desde el disco, los datos se descifran y cargan en la memoria.
ADE cifra los discos duros virtuales (VHD) de la máquina virtual. Si un disco duro virtual está protegido con ADE, solo la máquina virtual que posee el disco tiene acceso a la imagen de disco.
Es posible utilizar ambos servicios para proteger los datos.
Storage Service Encryption
SSE es un servicio de cifrado integrado en Azure que se usa para proteger datos en reposo. La plataforma de almacenamiento de Azure cifra automáticamente los datos antes de almacenarlos en varios servicios de almacenamiento, incluidos Azure Managed Disks. El cifrado está habilitado de forma predeterminada mediante el cifrado AES de 256 bits y el administrador de la cuenta de almacenamiento lo administra.
SSE está habilitado para todas las cuentas de almacenamiento nuevas y existentes, y no se puede deshabilitar. Dado que los datos están protegidos de forma predeterminada, no es necesario modificar el código ni las aplicaciones para aprovechar SSE.
SSE no afecta al rendimiento de los servicios de Azure Storage.
Azure Disk Encryption
El propietario de la máquina virtual administra ADE. Controla el cifrado de los discos controlados por máquinas virtuales Windows y Linux, mediante BitLocker en máquinas virtuales Windows y DM-Crypt en máquinas virtuales Linux. El cifrado de unidad BitLocker es una característica de protección de datos que se integra en el sistema operativo y soluciona las amenazas de robo y exposición de datos de los equipos perdidos, robados o retirados incorrectamente. De forma similar, DM-Crypt cifra los datos en reposo para Linux antes de escribir en el almacenamiento.
ADE garantiza que todos los datos en los discos de máquinas virtuales se cifren en reposo en el almacenamiento de Azure y se requiere ADE para máquinas virtuales con copia de seguridad en el almacén de recuperación.
Con ADE, las máquinas virtuales arrancan bajo directivas y claves controladas por el cliente. ADE se integra con Azure Key Vault para administrar estos secretos y las claves de cifrado del disco.
Nota:
ADE no admite el cifrado de máquinas virtuales de nivel Básico y no se puede usar un servicio de administración de claves (KMS) local con ADE.
Cuándo usar el cifrado
Los datos del equipo están en peligro cuando están en tránsito (se transmiten a través de Internet u otra red) y cuando están en reposo (guardados en un dispositivo de almacenamiento). La preocupación principal al proteger los datos en discos de máquina virtual de Azure es el escenario en reposo. Por ejemplo, alguien podría descargar el archivo de disco duro virtual (VHD) asociado a una máquina virtual de Azure y guardarlo en su equipo portátil. Si el disco duro virtual no está cifrado, el contenido del disco duro virtual es posiblemente accesible para cualquier persona que pueda montar el archivo VHD en su equipo.
En el caso de los discos del sistema operativo (SO), los datos como las contraseñas se cifran automáticamente, por lo que incluso si el propio disco duro virtual no está cifrado, no es fácil acceder a esa información. Las aplicaciones también pueden cifrar automáticamente sus propios datos. Sin embargo, incluso con estas protecciones, si alguien malintencionado accede a un disco de datos, y el propio disco no está cifrado, podría explotar cualquier debilidad conocida en la protección de datos de esa aplicación. Con el cifrado de disco, estas vulnerabilidades de seguridad no son posibles.
SSE forma parte de Azure y, cuando se usa, no debería haber ningún impacto perceptible en el rendimiento en la E/S de disco de la máquina virtual. Los discos administrados con SSE son ahora la opción predeterminada y no debería haber ningún motivo para cambiarla. ADE usa las herramientas del sistema operativo de la máquina virtual BitLocker y DM-Crypt. Por lo tanto, la propia máquina virtual tiene que realizar algún trabajo cuando se realiza el cifrado o el descifrado en los discos de máquina virtual. El impacto de esta actividad adicional de CPU de máquina virtual suele ser insignificante, excepto en determinadas situaciones. Por ejemplo, en caso de tener una aplicación con uso intensivo de CPU, puede ser adecuado dejar el disco del sistema operativo sin cifrar para maximizar el rendimiento. En esta situación, puede almacenar los datos de la aplicación en un disco de datos cifrado independiente, lo que le proporciona el rendimiento que necesita sin poner en peligro la seguridad.
Azure proporciona dos tecnologías de cifrado complementarias que se usan para proteger los discos de máquina virtual de Azure. Estas tecnologías (SSE y ADE) cifran en diferentes capas y sirven para finalidades distintas. En ambas se usa el cifrado AES de 256 bits. El uso de las dos tecnologías proporciona una protección de defensa en profundidad contra accesos no autorizados al almacenamiento de Azure y a discos duros virtuales específicos.