Treo Blog

En este espacio puedes explorar las últimas tendencias y noticias en tecnología, seguridad informática e infraestructura TI.

  • Jonathan Rodriguez Paipa

Mejoras en el cifrado de disco enlazado a la red en RHEL 8

Por: Sergio Correia



Crédito: Pexels

¿Qué es el descifrado basado en políticas?


El descifrado basado en políticas (PBD) es una colección de tecnologías que permiten el desbloqueo automático de volúmenes cifrados de discos duros en máquinas virtuales y físicas mediante una variedad de métodos de desbloqueo. Cuando el método de desbloqueo utiliza un servidor de red especial, lo llamamos Cifrado de disco enlazado a la red (NBDE).


Como puede ver en muchas versiones recientes de Red Hat Enterprise Linux (RHEL), Red Hat se compromete a brindar mejoras a PBD y NBDE. Este artículo intenta presentar algunos de ellos.


Rotación de teclas Tang


NBDE requiere un servidor de red especial. En RHEL, este servidor se llama Tang y configurar NBDE implica configurar Tang. Tang genera claves para usar en el cifrado y descifrado de datos. Los administradores deben rotar estas claves periódicamente y también actualizar los clientes para que usen las nuevas claves, para evitar la pérdida de datos.


Rotar las claves Tang implica generar nuevas claves para el servidor y excluir las actuales del anuncio del servidor para que los clientes ya no utilicen las claves anteriores, sino las nuevas, las anunciadas. Las claves rotadas todavía existen desde la perspectiva del servidor, y los clientes que estaban vinculados a ellas todavía funcionan. Es recomendable actualizar los enlaces del cliente para usar las nuevas claves, y una vez que ningún cliente esté usando las claves rotadas, podemos eliminarlas de forma segura.


Actualización vinculante en los clientes


Actualizar los enlaces en el lado del cliente implica comparar las claves utilizadas para el enlace con las anunciadas por el servidor Tang. Si las claves utilizadas para el enlace no están presentes en el anuncio del servidor, significa que se han rotado en el servidor, en cuyo caso puede actualizar el enlace para utilizar las nuevas claves.


Realizar este tipo de verificación fue una tarea compleja, ya que uno tuvo que lidiar directamente con varias utilidades de interfaz de línea de comandos (CLI), como cryptsetup, jose, luksmeta (si maneja dispositivos LUKS v1 ), y así sucesivamente, para verificar si los enlaces están usando teclas rotadas.


Obtener información para responder preguntas como "¿Qué vinculaciones tengo en este dispositivo, si las hay?" o "¿Qué configuración está usando en esta ranura en particular, por ejemplo, a qué servidor Tang está vinculado?", por ejemplo, ya era una tarea no trivial.


RHEL ahora ofrece algunas utilidades de línea de comandos que ayudan a responder estas preguntas y también ayudan a simplificar el proceso de realizar la rotación de claves en los clientes cuando sea necesario.


Una de las herramientas que utilizará es clevisuna utilidad para hacer cosas como enlazar, cifrar y descifrar dispositivos. Elclevis luks list comando que puede enumerar los pines de horquilla vinculados a un dispositivo LUKS en particular.


Usando clevis luks list


Este comando indica si hay enlaces y cuáles son sus detalles de configuración. Como ejemplo, identifique los enlaces de Clevis en el dispositivo / dev / sda2:

clevis luks list -d /dev/sda21: tang '{"url":"10.0.0.10"}'

La salida declevis luks list en este ejemplo indica que la ranura número 1 en / dev / sda2 está vinculada a una configuración Tang, y el servidor Tang asociado es 10.0.0.10. Esta es información útil que no teníamos antes.


En este punto, las operaciones clevis luks report y lo clevis luks regenayudan a identificar si hay claves rotadas y a realizar la actualización de enlace en sí.


Los comandos clevis luks report y clevis luks regen


Estos dos comandos simplifican la rotación de teclas. El primero le dice si está usando alguna clave rotada, y el segundo realiza un reenlace, lo que significa que su servidor Tang usará las nuevas claves después de que finalice.


El uso clevis luks report compara las claves en uso en el enlace con las claves anunciadas por el servidor. Si detecta que las llaves difieren, informa sobre la presencia de llaves rotadas y ofrece usar clevis luks regen para actualizar la vinculación.


Usando clevis luks regen, por otro lado, realiza un reenlace usando la configuración de enlace existente. Después de que se ejecute, el enlace usará las nuevas claves, y si vuelve a ejecutar el informe de clevis luks, no obtendrá resultados, lo que significa que no hay claves rotadas.


Para obtener información específica sobre cómo utilizar estos comandos, consulte la documentación del producto RHEL .


Editar enlaces


Esta nueva opción le clevis luks ayuda a editar una configuración de enlace particular para cambiar atributos específicos. Por ejemplo, en un pin tang, puede cambiar la dirección URL del servidor Tang:


clevis luks edit -d /dev/sda2 -s 1

El comando anterior abre un editor de texto con la configuración JSON del pin en la ranura número 1 en / dev / sda2, que luego podemos editar:

{   "url": "10.0.0.10" }

Una vez que complete la edición, puede guardar y salir del editor. En este punto, Clevis valida la configuración JSON actualizada y la aplica si no detecta ningún error. Al final de este paso, ha actualizado el enlace con la nueva configuración.


Al igual que su propia configuración, los pines admiten el cambio de diferentes atributos: por ejemplo, el pin tang permite cambiar la URL del servidor Tang, mientras que el pin tpm2 permite cambiar propiedades como el hash o la clave, por ejemplo. Al usar el pin sss, uno de los atributos que podríamos cambiar es el umbral del esquema de intercambio secreto de Shamir ; también podríamos agregar o quitar nuevos pines a su configuración.


Conclusión


Dado que la rotación de claves juega un papel crucial en el cifrado de disco enlazado a la red, RHEL se ha centrado en mejorar la experiencia del usuario en torno a los procedimientos relevantes involucrados en ella. Los procedimientos que tradicionalmente han sido complejos. En esta publicación, presentamos algunas utilidades de línea de comandos que simplifican tanto la verificación de si se debe actualizar alguna clave como la actualización cuando sea necesario. Además, también presentamos otra utilidad que le permite cambiar parámetros en la configuración de enlace de una manera fácil.


Fuente: Blog de Red Hat


3 vistas0 comentarios