Cifrar USB con LUKS

LUKS (Linux Unified Key Setup) es una especificación de cifrado de disco creado por Clemens Fruhwirth, originalmente destinada a sistemas GNU/Linux. Mientras que la mayoría del software de cifrado de discos se basan en diferentes formatos no documentados e incompatibles entre sí, LUKS especifica un formato estándar en disco, independiente de la plataforma, para usar en diversas herramientas. Esto facilita la compatibilidad entre los diferentes sistemas operativos.

La aplicación de referencia funciona en GNU/Linux y se basa en una versión mejorada de cryptsetup, utilizando dm-crypt como la interfaz de cifrado de disco.

Ahora veremos como cifrar una partición en un dispositivo de almacenamiento USB.

Accedemos como root.

su -

Instalamos el paquete cryptsetup y sus dependencias.

aptitude install cryptsetup

Conecta el USB y escribe dmesg para averiguar la ruta del nuevo dispositivo.

dmesg

En las ultimas lineas nos devolverá algo como esto:

sdc: sdc1
EXT4-fs (sdc1):mounted filesystem with ordered data mode. Opts: (null)

Donde sdc (/dev/sdc) es nuestro USB y sdc1 (/dev/sdc1) la partición principal, en este caso se trata de una partición con el sistema de archivos EXT4.

Desmontamos la partición:

umount /dev/sdc1

Ahora eliminaremos la tabla de particiones y crearemos una nueva:

fdisk /dev/sdc

Nos dirá algo parecido a esto:

Bienvenido a fdisk (util-linux 2.25.2).
Los cambios solo permanecerán en la memoria, hasta que decida escribirlos.
Tenga cuidado antes de utilizar la orden de escritura.


Orden (m para obtener ayuda):

Nos pide una orden, escribimos o. Nos debería devolver algo así:

Created a new DOS disklabel with disk identifier 0xb083c8db.

Orden (m para obtener ayuda):

Ahora introducimos w para escribir los cambios. Si todo a ido bien nos devolverá esto:

Se ha modificado la tabla de particiones.
Llamando a ioctl() para volver a leer la tabla de particiones.
Se están sincronizando los discos.

Ahora vamos con la partición, volvemos a usar fdisk:

fdisk /dev/sdc

Y nos pedirá otra orden, escribimos n para crear la partición.

Orden (m para obtener ayuda): n

Ahora nos pregunta el tipo, escribimos p para extendida. En número de partición podemos poner 2 (predeterminado).

Tipo de partición
   p   primaria (2 primarias, 0 extendidas, 2 libres)
   e   extendida (contenedor para particiones lógicas)
Seleccionar (valor predeterminado p): p
Número de partición (2-4, valor predeterminado 2):

Ahora nos preguntará por el primer y el último sector de la nueva partición, pulsamos Intro 2 veces para dejar los que vienen por defecto. Volvemos a escribir w para escribir los cambios.

Ahora utilizaremos el comando cryptsetup para cifrar la partición, introducimos:

cryptsetup luksFormat /dev/sdc1

Te preguntará si estás seguro (escribe YES) y luego la contraseña 2 veces.

WARNING!
========
Esto sobreescribirá los datos en /dev/sdc1 de forma irrevocable.

Are you sure? (Type uppercase yes): YES
Introduzca la frase contraseña: contraseñamuylarga
Verifique la frase contraseña: contraseñamuylarga

Formateamos la nueva partición cifrada utilizando otra vez cryptsetup.
«PARTLUKS01» es la etiqueta hemos elegido para esta partición.

cryptsetup luksOpen /dev/sdc1 PARTLUKS01

Y nos pedirá la contraseña antes especificada.

Introduzca la frase contraseña de /dev/sdc1: contraseñamuylarga

Ahora tienes que elegir el formato que mejor se adapte a lo que necesites y vayas a usar.

Las opciones -L y -n sirven para darle un nombre reconocible a la unidad. En este ejemplo usaremos  «CIFRADO" como nombre.

Para formatear como EXT4:

mkfs.ext4 /dev/mapper/PARTLUKS01 -L CIFRADO

Para formatear como FAT32:

mkfs.vfat /dev/mapper/PARTLUKS01 -n CIFRADO

Para formatear como NTFS:

mkfs.ntfs /dev/mapper/PARTLUKS01 -L CIFRADO

Y para terminar, cerramos la partición con:

cryptsetup luksClose PARTLUKS01

Solamente queda desconectar el dispositivo y volver a conectarlo. Si todo va bien, y dependiendo del entorno de escritorio que usemos y como esté configurado, nos pedirá nuestra contraseña de una manera u otra, en mi caso, con Xfce y Thunar sale algo así.

cif

This entry was posted in LUKS, Privacidad, Tutoriales and tagged , , , . Bookmark the permalink.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *