Encriptacion de directorios y archivos en Linux con encfs

macame General, Technology 255 Comments

La encriptacion de sistemas de archivos, directorios y archivos es algo que siempre ha estado ahí, pero con la inclusion en el nucleo 2.6 de la api de encriptacion CryptoAPI han aparecido nuevas aplicaciones, aunque la que aquí voy a usar es sencilla de instalar, de usar y no requiere un nucleo 2.6
Sobre todo está enfocado a :

  • Administradores de Sistemas que quieren guardar cuidadosamente sus scripts
  • Simples usuarios quue quieren guardar su informacion sensible
  • Trabajadores que no desean que los administradores de la empresa vean sus archivos
  • …. seguro que un monton de usos mas …

Vamos a suponer que estamos usando una Debian, de lo contrario adapta los comandos como creas conveniente. Lo primero es bajarse encfs  (#apt-get install encfs deberia servir). esto nos baja e instala encfs y fuse si no lo tuvieramos instalado. FUSE es acronimo de filesystem Userspace, y nos permite montar y desmontar sistema de archivos con un usuario normal. FUSE debe ser introducido en el kernel de linux, o bien como modulo  o bien en el propio kernel. Para meterlo como modulo tenemos estas opciones:

  • Instalamos fuse-source
    • (#apt-get install  fuse-source) y nos vamos al directorio del mismo y lo descomprimimos
    • cd /usr/src ; bunzip2 fuse-src.tar.bzip2 ; tar zvf fuse-src.tar
    • Ahora compilamos e instalamos : cd /usr/src/modules/fuse/kernel/ ; ./configure ; make ; make install
    • el modulo deberia estar listo y lo cargamos con modprobe fuse
  • Existe un paquete llamado fuse-modules que  seguramente lo instale automaticamente pero no lo probé aun
  • desde el menu de compilacion del nucleo seleccion en Filesystems->fuse añadir como Modulo y listo

Ahora creamos un directorio para meter todos los datos privados como un usuario normal si lo preferimos:
$ mkdir ~/.privado/ ~/privado/ (necesitaremos los 2 directorios)
Nos aseguramos que el module fuse está cargado:
#modprobe fuse
Añadimos a nuestro usuario al grupo fuse
#usermod -Gfuse coffman (para que linux coja este cambio puede ser necesario que reinicies la sesión)
Creamos el sistema de archivos:
$ encfs ~/.privado/ ~/privado/
Creando nuevo volumen cifrado.
Por favor, seleccione una de las siguientes opciones:
introduzca “x” para modo de configuración para expertos,
introduzca “p” para el modo preconfigurado paranoico,
cualquier otra cosa o una línea vacía seleccionarán el modo estándar.
?>
p

Configuración paranoica seleccionada.

Configuración finalizada. El sistema de ficheros que se va a crear tendrá las siguientes propiedades:
Cifrado del sistema de ficheros: “ssl/aes”, versión 2:1:1
Codificación de nombres de ficheros: “nameio/block”, versión 3:0:1
Tamaño de clave: 256 bits
Block Size: 512 bytes, including 8 byte MAC header
Cada fichero contiene una cabecera de 8 bytes con datos únicos del IV.
Los nombres de ficheros se codificarán usando el modo de encadenamiento de IV.
El IV de los datos del fichero está encadenado al IV del nombre del fichero.

A continuación se le pedirá una contraseña para el sistema de ficheros.
Debe recordar esta contraseña, ya que no existe absolutamente ningún mecanismo de recuperación. No obstante, la contraseña puede cambiarse después con encfsctl.
Nueva contraseña Encfs: *******
Verifique la contraseña Encfs: *******

Con esto ya deberiamos tener el directorio ~/privado/ protegido perfectamente …
Para desmontar el directorio :
$ fusermount -u ~/privado/

Listo… nuestros datos ya estan a salvo, siempre que los metamos en el directorio ~/privado , claro está 😉

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.