Disco Virtual Encriptado

El procedimiento muestra como crear un disco virtual encriptado en un archivo (se crea el mismo con el comando dd) montando como dispotivo (loop).

dm-crypt es un device-mapper tal que provee cifrado transparente de dispositivos de bloque utilizando cryptoapi. Las escrituras a este dispositivo serán cifradas y las lecturas descifradas. Se podrá montar un sistema de archivos en el mismo de la manera habitual, pero no se podrán acceder los datos sin la clave.

cryptsetup es una herramienta que facilita el uso de dm-crypt, eliminando las llamadas directas a dmsetup.

Procedimiento para la creación de un disco virtual encriptado.

El primer paso a realizar es crear un archivo vacío del tamaño que se quiera tener el sistema de archivos encriptado. El tamaño es definido por el valor que se le asigna al parámetro “count”, en este caso es 1gb (1024kb por 1000). El archivo a crear es “encripted.fs” en el directorio “/home/user”.

< dd if=/dev/zero of=/home/user/encrypted.fs bs=1024 count=1024000

Finalizada la creación del sistema de archivos, se debe instalar el paquete que da soporte a sistemas de archivos encriptados.

< sudo apt-get install cryptsetup

Finalizada la instalación se realiza un loop del archivo creado al device /dev/loop7 para poder utilizarlo como dispositivo físico.

< sudo losetup /dev/loop7 /home/user/encrypted.fs

A continuación se crea el sistema de archivo encriptado. Durante este procedimiento el sistema solicitará una contraseña (y su verifciación), que deberá ser introducida cada vez que el mismo se monte.

< sudo cryptsetup --verbose --verify-passphrase luksFormat /dev/loop7

Finalizda la configuración del mismo, se procede a dejar disponible el sistema de archivos y a darle formato con ext3 (o ext4 si se quiere).

< sudo cryptsetup luksOpen /dev/loop7 encryptedfs0
< sudo mkfs.ext3 /dev/mapper/encryptedfs0

Finalizada la configuración del sistema de archivos, se debe crear el punto de montaje y montar el mismo. En este caso se creo un directorio “encryptedfs0” en el home del directorio user.

< sudo mkdir -p /home/user/encryptedfs0
< sudo mount /dev/mapper/encryptedfs0 /home/user/encryptedfs0/

Para que el usuario “user” pueda escribir en el sistema de archivos, se debe asignar los permisos a la unidad.

< sudo chown user.user /home/user/encryptedfs0

Finalizado este procedimiento, el sistema de archivos queda disponible para el usuario.

Montaje:

Para montar (hacer disponible la información en el sistema de archivos encriptados) se debe ejecutar los siguientes comando.

< sudo losetup /dev/loop7 /home/user/encrypted.fs
< sudo cryptsetup luksOpen /dev/loop7 encryptedfs0
< sudo mount /dev/mapper/encryptedfs0 /home/user/encryptedfs0/

Desmontaje:

Para desmontar la unidad, se deben ejecutar los siguientes comandos.

< sudo umount /dev/mapper/encryptedfs0
< sudo cryptsetup luksClose encryptedfs0

Cambio de contraseña:

El prime paso es dar de alta una nueva contraseña

< sudo cryptsetup luksAddKey /dev/loop7 
> Enter any passphrase: < contraseñaVieja
> Enter new passphrase for key slot: < contraseñaNueva
> Verify passphrase: < contraseñaNueva

Finalizado esto se borra la contraseña más vieja:

< sudo cryptsetup luksAddKey /dev/loop7 0

 

Deja un comentario