Esta receta explica como utilizar dm-crypt para cifrar el sistema de ficheros de un pendrive o disco USB externo y luego montarlo cómodamente.

Introducción

Si llevas tus claves, certificados u otros ficheros secretos en un pendrive, nada mejor que cifrarlo y asunto resuelto. Verás que fácil…

Ingredientes

  • cryptsetup – configures encrypted block devices
  • pmount – mount removable devices as normal user

Cifrar una partición

Los siguientes pasos sólo son necesarios cuando se crea y formatea la partición cifrada.

Crear el contenedor

# cryptsetup luksFormat /dev/sde1

Abrir el contenedor

# cryptsetup luksOpen /dev/sde1 pincho

Formatear la partición

# mkfs.ext3 /dev/mapper/pincho

Montar la partición

# mount /dev/mapper/pincho /mnt/punto

Desmontar la partición

De la forma habitual:

# umount  /mnt/punto

Cerrar el contenedor

#  cryptsetup luksClose /dev/mapper/pincho

Montaje automágico

Una de las cosas interesantes de este sistema es que pmount ofrece soporte para este tipo de particiones cifradas. Así que es tan fácil montar un pendrive cifrado como uno normal. Simplemente se enchufa y gnome-volume-manager (el demonio de “Unidades y soportes extraibles”) se encarga de pedir la contraseña y hacer todo el proceso de montaje y desmontaje de forma transparente, y sin tener que usar la consola en ningún momento (que veo que preocupa ;-)).

Imágenes loop cifradas

Crear el fichero

$ dd if=/dev/urandom of=container.loop bs=1M count=10

Montar la imagen loop

$ sudo losetup /dev/loop/0 container.loop

Setup

El resto del proceso es idéntico a la modalidad con partición cambiando /dev/sde1 por /dev/loop0 en los comandos. Al desmontar, después de los anteriores, ejecutar:

 $ losetup -d /dev/loop/0

Comentarios

Una pequeña pega de dm-crypt es que no proporciona negación plausible. En cristiano: si el soporte llega a manos de un “agente enemigo”, sabrá que hay datos cifrados en él aunque no pueda leerlos, vamos, que sabrá que escondes algo.

Un criptosistema ideal no deja huellas de su uso, es decir, no hay manera de distinguir datos aleatorios de datos cifrados. Este tipo de feature la proporciona por ejemplo TrueCrypt. Realmente yo creo que, a menos que seas espía o te dediques a pasar secretos militares en tus ratos libres, este nivel de privacidad es innecesario, al menos a día de hoy.

Referencias



blog comments powered by Disqus