Vamos a crear un fichero de 1Gb de tamaño, donde introduciremos los datos a proteger, lo encriptaremos y aprenderemos la forma en la cual acceder a esos ficheros.
Cargaremos como root el dispositivo de bloques loop:
# modprobe cryptoloop && lsmod | grep cryptoloop
Una vez hecho esto seleccionaremos un algoritmo de encriptación, podemos elegir entre los que estén disponibles en el sistema.
# modinfo /lib/modules/$(uname -r)/kernel/crypto/*
Crearemos el fichero de bloque en el que vamos a encriptar nuestros datos, usaremos diskdump para ello, rellenandolo con ceros y dandole 1 Gigabyte de tamaño.
# dd if=/dev/zero bs=1k count=$[1000*1000] of=/home/user/cifrado
Podemos ajustar el tamaño a nuestras necesidades sustituyendo el tamaño del número en negrita por el tamaño en Megabytes que deseemos, el tamaño es aproximado.
Ahora cifraremos el fichero que acabamos de crear, elegiremos la contraseña y el sistema de ficheros del archivo de bloques, por partes, primero ciframos:
# losetup -e serpent /dev/loop0 /home/user/cifrado
Y ahora creamos el sistema de ficheros, lo crearemos con ext3.
# mkfs.ext3 /dev/loop0
Procedemos a montar nuestro fichero, creamos el directorio donde vamos a montar nuestro sistema de ficheros
# mkdir /mnt/cifrado
Montamos el fichero.
# mount -t ext3 /dev/loop0 /mnt/cifrado
podemos incluir cualquier tipo de ficheros en nuestro fichero cifrado. Para desmontar el fichero ejecutaremos.
# umount /mnt/cifrado
y lo deshabilitamos
# losetup -d /dev/loop0
para volver a montar la partición
# losetup -e serpent /dev/loop0 /home/user/cifrado
# mount -t ext3 /dev/loop0 /mnt/cifrado
Podemos crear un alias o hacer un pequeño script para realizar esta tarea de una forma mas sencilla.