Archivo para la categoría Encriptacion

Tu Linux Como caja Fuerte con EncFS

En esta ocasión voy a tocar un tema muy importante en linux y otros sistemas op., la Seguridad y Vulnerabilidad de nuestros archivos. Hace algún tiempo atrás paso algo con respecto a la seguridad de nuestras identidades, eso si a una escala de país. Un tipo  hace algún tiempo logro publicar una serie de  bases de datos que fueron  sustraídas desde distintas reparticiones públicas los listados del Registro Electoral, Mineduc, PSU, Dirección de Movilización Nacional y otros.

Y yo creo que a esto podría venir la pregunta. ¿Mis datos Personales que manejo en mi pendrive, o disco duro de la empresa o universidad están 100% a salvo?
encfs1

La respuesta seria, no al 100%.

1)En las universidades y lugares de trabajo, casi siempre están trabajando en red compartiendo ficheros o cosas. Y la gran mayorías de datos, email, datos importantes de transacciones, Logs de conversaciones de msn,  las cockies de firefox de las chicas que estuve viendo de  facebook, etc. Están casi siempre a la vista de “Otras Personas”.
2)Ya en un caso mas extremo, en donde estemos trabajando directamente con un sistema Unix, y tengamos a un Root que es intruso, el podría llegar y ver todas las cosas con las que uno ah trabajo durante el día, como son las contraseñas guardadas en el navegador, o ver simplemente nuestros trabajos .doc.

Entonces a los problemas planteados antes, lo primero que se necesitaría seria algún tipo de programa en el cual se maneje algún tipo de clave encriptada y se pueda llevar a cualquier plataforma, ( ya sea windows, linux o mac). Y los segundo seria seguramente que ningún usuario con un grado de poder elevado como el Root o algún administrador de redes vean los documentos que estemos usando dentro de el sistema.

Para poder resolver este gran problema, esta EncFS en linux.

EncFS es un sistema de ficheros criptografico que usa FUSE para poder funcionar, pero encfs no es mas que un sistema de ficheros encriptados que trabaja con encriptaciones AERIS, ( de 256Bits), ósea que tus archivos los puedes dejar encriptados con hasta 15 caracteres de contraseñas.

Bueno, y sin mas preámbulos se procederá a la parte practica de esta guía.

Voy a ir explicando la instalación de EncFS paso a paso por algunas distros como, debian, arch y mandriva. Obviamente no voy a poder mostrar como es la instalación de EncFS en todas las distros, ya que nunca terminaría este manual, para aquello voy a proceder a hacer una sección de Instalación “Universal” de EncFS, compilando los archivos.

encfs2

Instalando EncFS en Archlinux:

Para Archlinux tenemos el gestor de paquetes Pacman, así que solamente habría que instalar EncFS desde el repositorio.

Para ello, se tiene que hacer el siguiente comando:

$ sudo Pacman -S encfs

encfs3

Y luego nos saldría las dependencias que se necesitan para instalar Encfs. Como mencione antes, para que pueda funcionar se necesita  el modulo FUSE. En algunos linux FUSE viene por defecto desde el kernel 2.4.X – 2.6.X, en este caso no venia ;D.

Solamente habría que dar paso a poner la letra S y enter. Después de que baje los paquetes y los instale, es recomendable agregar a nuestra lista de Módulos en rc.conf el FUSE, de esta manera:

encfsarch2

Ahora podemos proceder a reiniciar nuestro arch para que cargue el modulo de Fuse, o podemos nosotros mismo probarlo con el comando modprobe así:

$ sudo modprobe fuse

encfsarch3

Instalando EncFS en Debian.

*Cabe mencionar que esta instalación en debian, también es valida para algunas distros basadas en esta misma ( k/x/ubuntu, linux mint, etc etc..)encfs4

La instalación en debian, es bastante simple y fácil, ya que se encuentra el gestor de paquetes aptittude, y en cuanto a el pro – requisito de EncFS en debian seria FUSE, este de manera automática al instalar Encfs lo incluye como co- dependencia.

Primero, hay que actualizar la lista de programas de nuestro debian, o algún linux basado en este como por ejemplo, U/k/x-buntu o LinuxMint por mencionar algunos.

$ Sudo apt-get update

Luego de eso, si es que existen programas a actualizar, habría que ejecutar el siguiente comando:

$ Sudo apt-get upgrade

encfs5

Y si es necesario reiniciar el sistema.

Después de eso solamente quedaría instalar el sistema de EncFS, para lo cual se realiza el típico comando para instalar programas:

$ Sudo apt-get install encfs

encfs6

En las dependencias podemos ver que incluye el modulo de fuse, así que después de que instale correctamente las dependencias y encfs, se tendría que agregar el usuario a grupo de fuse. Por ejemplo el comando seria así, (donde users es tu usuario a agregar)

$ Sudo adduser users fuse

encfs7

(en la imagen agregue a mi usuario danimanx, ustedes tienen que reemplazar eso con el de ustedes)

Luego tendríamos que probar el modulo de fuse a mano con el siguiente comando:

$ Sudo modprobe fuse

encfs8

Ahora, si es que se quiere agregar el modulo para que inicie cada vez que prendemos el pc, se tiene que agregar fuse en /etc/modules.

encfs9

Eso seria todo con respecto a la instalación y configuración en debian.

Instalando EncFS en Mandriva.

encfs10

En esta distro es súper fácil instalar encfs y fuse, ya que dispone de un gestor con entorno gráfico para buscar/instalar los programas.

Primero tenemos que irnos a

>Menú >Instalar y quitar software > Administración de software

encfs11

Nos va a salir el programa que usa mandriva para instalar cosas:

encfs12

Y buscamos el programa encfs, ponemos enter y luego le hacemos un click al programa cuando lo encuentre. Luego ponemos aplicar, y nos va a salir un cuadro como el de arriba que automáticamente va a instalar FUSE, por que es una dependencia de encfs.

Ponemos Aceptar y si no tenemos nuestro sistema actualizado, nos va a salir un cuadro como este:

encfs13

Ponemos que si, y esperamos a que actualice y/o instale los programas antes mencionados.

Luego tenemos que darle los permisos correspondientes como root, de esta manera:

encfs14

Ya con eso estaría instalado/configurado en mandriva.

Instalando EncFS de manera Universal.

encfs15

Estos pasos que voy a ir explicando, están hechos para las personas que quieran aprender un poco mas acerca de como compilar, extraer e instalar programas desde la consola, sin los gestores gráficos de linux para agregar/instalar programas.

La idea es que de esta forma sirva para la gran mayoría de las distribuciones por igual.

Nota: EncFS necesita como dependencia estos programas

* FUSE
* rlog
* OpenSSL – versión 0.9.6
* boost

Lo primero que habría que hacer, seria ver si tenemos el modulo FUSE en nuestro linux, para ello procedemos a realizar el siguiente comando:

/sbin/modprobe fuse

Si no tenemos los privilegios suficientes para realizar esa acción ( ya que sbin, es la carpeta de el root para guardar sus binarios), procedemos a loguearnos como root y hacer la prueba.
También se puede hacer con el siguiente comando:

$ modprobe fuse

encfs16

Si no poseemos el modulo fuse, nos va a dar error. En ese caso habría que Bajarlo e Instalarlo a mano.

Para ello, realizamos el siguiente comando:

$ mkdir temp

$ cd temp/

$ wget http://downloads.sourceforge.net/fuse/fuse-2.7.4.tar.gz

encfs17

Luego tenemos que descomprimir el archivo, y proceder a instalarlo:

$ tar -xvzf fuse-2.7.4.tar.gz

$ cd fuse-2.7.4/

$ ./configure

$ make

$ sudo make install o como root # make install

Nos tendría que salir una imagen como esta:

faltante

*Nota, si en la parte de ./configure te dio un error como este:

encfs18

Es que te falta instalar gcc, para ese caso tienes que averiguar como poder instalar gcc en tu distribución

Después de haber instalado fuse, vamos a comprobar que se encuentra en el sistema con el comando

sudo modprobe fuse

Si se encuentra instalado no nos tendría que dar error, pero si da error al levantar fuse, tienes que reinstalar otra vez fuse.

Ahora procedemos a bajar e instalar EncFS:

$ cd  ~/temp

$ wget http://encfs.googlecode.com/files/encfs-1.5-2.tgz

$tar -xvzf encfs-1.5-2.tgz

encfs19

Una vez que este descomprimido, nos situamos en el directorio:

$ cd encfs-1.5/

Y procedemos a leer las instrucciones de instalación:

$ more INSTALL

(este ultimo paso es importante, por que cada vez que ustedes bajen un programa para compilarlo, siempre, siempre, pero siempre tienen que leer el archivo install y readme, ya que hay sale los pasos para poder compilar el programa, o los pasos opcionales por si falla al compilarlo)

El archivo INSTALL tiene lo siguiente:

encfs20

En resumen, este programa tiene un script para configurar automáticamente el programa, pero nosotros lo vamos a hacer de la manera tradicional 😉

./configure

Pero… ups a mi me dio error por que no encontró una librería:

encfs21

La librería que no encontró fue boostlib, así que la vamos a bajar y compilar a mano

$ cd  ~/temp

$ wget http://downloads.sourceforge.net/boost/boost_1_38_0.tar.gz

$ tar -xvzf boost_1_38_0.tar.gz

$ cd boost_1_38_0/

$ ./configure

$ make

$ sudo make install

encfs22

Después de haber instalado la librería de boost, procedemos a configurar otra vez EncFS.

encfs23

Pero nos dio error en el programa Openssl, así que vamos a instalarlo como lo hicimos con la librería de boost (tranquilos, algún día terminaremos 😉

$ cd  ~/temp

$ wget http://www.openssl.org/source/openssl-0.9.8j.tar.gz

$ tar -xvzf openssl-0.9.8j.tar.gz

$ cd openssl-0.9.8j/

$ make

$ sudo make install

encfs24

Después de instalar Openssl, procedemos con la instalación de encfs.

Por ultimo agregamos a nuestro usuario a el grupo fuse.

Sudo adduser users fuse

*donde users es tu usuario.

Usando EncFS como caja de seguridad para tus archivos en Linux

encfs-combo-400-full

Ahora llegamos a la parte de esta guía en donde voy a mostrar como usar nuestro nuevo sistema de ficheros encriptados en linux.

Básicamente para encriptar datos, se necesitan crear 2 directorios. Uno de ellos va a albergar los datos encriptados mientras que la otra carpeta va a ser necesaria para poder Montar los datos encriptados de la primera carpeta.

Entonces, procedemos a crear el directorio en donde va a estar alojados nuestros datos encriptados:

$ mkdir .DatosEnc/

*Nota, se crea la carpeta al comienzo con un punto para que esta quede “oculta”.

Y creamos el otro directorio en donde va a ser montado nuestros datos.

$ mkdir DatosDes/

Y ahora toca configurar por primera vez las carpetas para montarlas, desmontarlas y encriptar. Para ello se procede a realizar el comando:

$ encfs /ruta/exacta/del/archivo/.DatosEnc/  /ruta/exacta/del/archivo/DatosDes/

*Nota, se tiene que colocar la ruta absoluta en donde se encuentran nuestros 2 archivos.

encfs25

Como en la imagen anterior Seleccionamos la opción “P”, la cual es para una autoconfiguracion de Encfs y la mas practica xD.

Luego nos va a preguntar la contraseña que le queramos dar a nuestros datos.

Ahora podemos comprobar si es que tenemos nuestros datos “montados”, con el comando:

$ df

encfs26

Hay podemos ver en la imagen que tenemos montado nuestro ficheros a encriptar. Ya que sale el tipo de fichero encfs y la ruta correspondiente en “Donde hay que trabajar” para guardar los archivos.

Nos vamos a la carpeta en donde vamos a trabajar:

$ cd /home/user/DatosDes

Creamos cualquier archivo para comprobar si lo encripta.

$ echo «CualquierCosa» > dato.txt

Y comprobamos si lo creo:

$ ls -la

encfs27

Ok, el archivo esta en la carpeta de trabajo, pero y que estará pasando en la carpeta en donde se tienen que encriptar los archivos?

Para ello hacemos un:

$ ls -la  ~/.DatosEnc

encfs28

Como podemos ver en la imagen de arriba, los archivos están encriptados y no son visibles.

Una vez que queramos desmontar nuestra carpeta virtual, se tiene que realizar el siguiente comando:

$ fusermount -u ~/DatosDes

encfs29

Y hacemos un $ df para comprobar que la carpeta fue desmontada.

, , , , ,

1 comentario