Solución segura y sencilla para cifrar sistemas de archivos en Linux

EncFS

Hace tiempo que tenía un problema que quería solucionar, y heme aquí la solución a mi tesitura. Expongo el caso: a pesar de que me gusta tener una serie de archivos y documentos siempre a mano allá donde voy, soy un rebelde reaccionario de la incipiente revolución de la nube (al menos de la nube que no controlo yo exclusivamente) así que llevo todos esos archivos siempre en una memoria USB.

Hace unos días perdí una tarjeta de memoria con fotos (nada importante), que ya es cosa rara porque yo no suelo perder nunca nada (y lo poco que pierdo, lo encuentro). Lo importante es que me hizo reflexionar sobre el pendrive en que llevo a todas partes una serie de archivos personales que, sin ser íntimos ni comprometedores, sí que creo que deben ser protegidos de miradas ajenas.

La solución era usar un sistema de archivos cifrado, pero reconozco que intenté empezar a investigar varias veces y al final todo me resultaba bastante oscuro de aprender.

Casi tengo la solución de la mano de TrueCrypt, pero soy un talibán de las licencias, y que Debian decida no incluirlo en los repositorios oficiales por incompatibilidad en este aspecto (a pesar de que es libre) es suficiente para que yo lo descarte.

Finalmente, y como no podía ser de otra manera, la gran web Kriptópolis me dio la solución gracias a su artículo «EncFS: cifrado fácil de ficheros en Linux«. De hecho, este artículo está exlusivamente basado en el original, pero muchos ya sabéis que suelo usar mi blog como libreta de apuntes.

A continuación las explicaciones (Debian):

Lo primero que hay que hacer es instalar el paquete encfs:

# aptitude install encfs

Si queremos hacer todas las operaciones como usuario normal sin ser administrador, tendremos que añadir nuestro usuario al grupo fuse dentro del archivo /etc/group. Yo ya lo hice cuando configuré SSHFS y no me ha hecho falta, pero lo recreo a modo de recordatorio

# usermod -G fuse -a usuario

Ahora voy a explicar un poco cómo funciona el método para que se entienda un poco mejor lo que viene a continuación.

Hacen falta siempre dos carpetas. Una carpeta A que contenga todo lo que queremos cifrar, por ejemplo ‘secretitos’ y una carpeta B donde aparecerá todo el contenido de A todo el tiempo que tengamos montada la unidad cifrada, por ejemplo, ‘secretitos-revelados’.

Cada vez que vayamos a usar la unidad, la montamos, y el contenido legible aparecerá en B, que es donde tenemos que trabajar, y cuando acabemos, debemos desmontarla, y entonces el punto de montaje (B) aparecerá vacío y sólo quedará la unidad cifrada (A). Mientras la unidad está montada, todo lo que hagamos en B, se cifra paralelamente en A en tiempo real, ya sea crear, modificar o eliminar cualquier carpeta o archivo. Se puede usar igual que cualquier unidad física a todos los efectos.

Ahora pasamos a la acción. Como hemos dicho necesitamos un punto de montaje donde aparecerá legible nuestra unidad cifrada cada vez que la montemos. Ese punto de montaje puede estar en cualquier lugar en el que tengas permisos de acceso y escritura como tu carpeta personal. Es decir, puedes cifrar una carpeta de una memoria USB pero montarla en una carpeta local del disco duro.

Creamos el punto de montaje, por ejemplo:

$ mkdir /home/usuario/secretitos-revelados

Ahora creamos la carpeta que va a contener toda la información a cifra, por ejemplo:.

$ mkdir /media/pendrive/secretitos

Ahora realizamos el paso más importante, que es «crear» la unidad. Este paso sirve para definir una contraseña y el cifrado basándose en ella, y para montar la unidad por primera vez. Es importante recordar que hay que poner las rutas absolutas (completas), no relativas.

$ encfs /media/pendrive/secretitos /home/usuario/secretitos-revelados

Desde este instante, puedes copiar archivos (o crearlos directamente) en la carpeta ‘secretitos-revelados’ y se irán cifrando al mismo tiempo en ‘secretitos’.

Cuando hayamos acabado de usar la unidad, la podemos desmontar con el siguiente comando, y veremos como queda vacío el punto de montaje y sólo tenemos la carpeta cifrada.

$ fusermount -u /home/usuario/secretitos

Cuando queramos volver a usar nuestro volumen cifrado, el comando para montarlo en este ejemplo sería:

$ encfs /media/pendrive/secretitos /home/usuario/secretitos-revelados

El sistema EncFS dispone de más características que pueden también resultar útiles, y se pueden consultar en las páginas man:

man encfs

Conviene resaltar que el sistema EncFS también está disponible para OSX y Windows.

Seguridad en la información, fácil, rápido y para toda la familia.

Previous Post Next Post

1 Comment

  • Reply nadie 30 septiembre, 2012 at 14:47

    Yo tengo dos particiones de mi netbook cifradas con LUKS http://es.wikipedia.org/wiki/LUKS

    Supongo que también valdría para memorias USB.

  • Responder a nadie Cancel Reply

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.