Thursday, March 13, 2008

Cifrando volúmenes

A veces en los portátiles hay información a la que no se debería poder acceder si «se pierden», o al menos esa es mi situación, así que he buscado cómo crearme un volumen cifrado.
Un volumen es un sitio donde se pueden guardar datos, puede ser una partición o, en mi caso, un volumen lógico de lvm.

Empezamos con los volúmenes, si quieres hacerlo con una partición puedes saltarte este cacho.

Creando un volumen

Instalar lvm es muy sencillo, sólo te instalas (en Debian) el paquete lvm2 y ya lo tienes.
Lo siguiente es coger una partición vacía, o una a sobreescribir, y hacer lo siguiente:
pvcreate /dev/sdxy
Siendo sdxy una partición, como sda3. Ya tenemos sdxy bajo el control de lvm y vacío.

Ahora creamos un grupo de volúmenes:
vgcreate volumenes
Ya tenemos un grupo de volúmenes que se llama «volumenes». Todo volumen tiene que pertenecer a un grupo de volúmenes, así que hay que crear la menos uno.

Por último, creamos un volumen (algo así como una partición virtual):
lvcreate volumenes mivolumen
Y ya tenemos creado el volumen mivolumen. ¿a que no ha dolido?
A partir de ahora tendremos un nuevo dispositivo en /dev/volumenes/mivolumen o /dev/mapper/volumenes-mivolumen, como si fuese una partición.

Usar LVM tiene muchas ventajas, como poder usar varios discos como si fuesen uno solo e, incluso, poder redimensionar los volúmenes mientras los estamos usando, sin tener que parar nada.

Para que se monten automáticamente al arrancar hay que escribir en /etc/fstab algo como esto:
/dev/volumenes/mivolumen /dondequiero/que/salga ext3 users 0 0
para más información:
man fstab

Vamos a lo que vamos.

Cifrando volúmenes (o particiones)

Para poder cifrar instalamos los paquetes cryptsetup y dmsetup (uno depende del otro).

Primero creamos el volumen cifrado:
cryptsetup create privado /dev/volumenes/mivolumen
Siendo privado como se va a llamar el volumen cifrado. Si usas una partición, aquí y en lo que sigue, en lugar de /dev/volumenes/mivolumen tendrás que usar /dev/sdxy, siendo sdxy una partición, como sda3.
Nos pedirá la frase de contraseña dos veces.

Entonces, editamos /etc/crypttab y ponemos algo como:
privado /dev/volumenes/mivolumen none none
Para más información man crypttab.

A continuación reiniciamos el servicio:
/etc/init.d/cryptdisks restart
Y nos pedirá la contraseña.
Una vez introducida se nos habrá creado otro volumen denominado /dev/mapper/privado. Realmente este volumen es mivolumen con una capa de cifrado encima.

Ahora es como si tuviésemos una partición nueva que se cifra al escribir en ella y, como toda partición, hay que formatearla. Vamos a usar ext3, por ejemplo:
mkfs.ext3 /dev/mapper/privado

Por último lo que hacemos es modificar el /etc/fstab (el mismo del que hemos hablado al principio), añadiendo algo como:
/dev/mapper/privado /donde/quiera/ponerlo ext3 users 0 0

Y lo montamos:
mount /dev/mapper/privado

De esta manera podremos usarlo como un directorio más hasta apagar la máquina.
Es importante darse cuenta de que, aunque desmontemos el volumen, los datos siguen siendo accesibles mientras exista el dispositivo /dev/mapper/privado.
Para eliminarle, primero desmontamos el volumen:
umount /dev/mapper/privado
Y después paramos el servicio de cifrado con:
/etc/init.d/cryptdisks stop
Todo esto se hará sólo al apagarse el sistema. Ahora cada vez que arranque el sistema, durante el inicio, se nos pedirá la contraseña para poder acceder a la información cifrada, sino quedará inaccesible.

Espero que os valga de algo.


0 Comments:

Post a Comment

<< Home