Actualmente existen diversos métodos de seguridad que pueden ser implementados dentro de cualquier organización con el objetivo de proteger la información más valiosa de cada usuario como son sus datos.
El método más efectivo y práctico que podemos implementar es usar algún tipo de cifrado para esta tarea, y aunque tenemos a nuestra disposición diversas opciones hoy hablaremos de una en especial que forma parte de la propia distribución de Linux y hace un trabajo realmente aceptable y esta es dm-crypt.
Para esto usaremos Ubuntu 17.10.
Dm-crypt (Device-mapper crypt) ha sido desarrollado con el objetivo de ofrecer un cifrado transparente de los dispositivos de bloque haciendo uso del kernel crypto API.
Al usar este comando, como usuarios podremos especificar un cifrado simétrico, un modo de cifrado, una clave (de cualquier tamaño, y posteriormente será posible crear un nuevo dispositivo de bloque en la raíz /dev.
Todos los datos que sean almacenados en esta ruta serán encriptados y la única forma posible de leerlos será descifrando su clave, de lo contrario no tendremos accedo a ellos.
Podremos montar este sistema de archivos de forma tradicional o apilar el dispositivo dm-crypt con cualquier otro dispositivo como volúmenes RAID o LVM.
Para habilitar el soporte de dm-crypt, será necesario habilitar CONFIG_DM_CRYPT en el dispositivo a usar.
Algo importante que debemos tener en cuenta es que la mayoría de las distribuciones de Linux actuales tienen dm-crypt incluido por defecto en su sistema.
Para configurarlo debemos usar los siguientes componentes de espacio de usuario:
Biblioteca de asignadores de dispositivos (parte del paquete LVM2)
Cryptsetup.
Todos estos paquetes ya están incluidos en el repositorio de la distribución a usar.
1. Especificar línea de asignación de tabla de crypt en dispositivo Linux
La tabla de asignación en el mapeador de dispositivos está definida con la siguiente sintaxis:
<sector_inicial> <tamaño> <objetivo> <tabla objetivo de mapeo>Los componentes son:
- Sector_inicial es 0 (para tablas que usan solo un segmento mapeado, la tabla iow contiene solo una línea)
- Tamaño, hace referencia al tamaño del dispositivo en sectores
- Objetivo es el nombre del objetivo del mapeo
Los sectores siempre serán sectores de 512 Bytes.