lunes, 22 de octubre de 2012

¡Coño! ¡Diez mil visitas! :D

Bueno, antes que nada decir que soy consciente que diez mil visitas no es mucho para un blog que lleva activo desde 2010. Otros blogs tienen ese volumen de tráfico por día.

Por otro lado, mi intención nunca fue tener el blog más popular de Internet. Desde siempre me ha gustado escribir pequeños artículos sobre temas técnicos. Esos artículos siempre acababan perdidos por mi disco duro o desperdigados por distintos foros. Así que un día me dije: "Para acabar perdiéndolos, mejor creo un blog y los dejo ahí. Así los tengo todos localizados, y a lo mejor hasta le resultan útiles a alguien".

Unos cuantos años más tarde, parece que el blog sí le ha resultado útil a alguien. Además, para mantener el blog activo tanto tiempo hace falta ser constante, y esa es una virtud que no me sobra. Razón de más para tomarme una buena cerveza alemana a mi salud. ¡Prosit!


Linux: cómo encriptar una partición de disco.

- Introducción.

El uso de datos o particiones encriptadas en Linux es un tema bastante amplio. Este artículo no pretende ser una descripción exhaustiva, me voy a centrar en un caso muy simple. Los mismos principios que aprenderás aquí podrás usarlos para encriptar particiones de sistema, de usuario, etc. Solo necesitarás automatizar todo un poco.

Mi caso es el siguiente. Uso un disco duro externo con interfaz eSATA para mis copias de seguridad. Como considero que parte de la información que almaceno ahí es sensible, quiero encriptar la partición para que, en caso de pérdida, no sea accesible.  Tan sencillo como eso.

Actualmente estoy usando una distribución Debian Wheezy con un kernel 3.2.0-3-amd64 Las instrucciones deberían valer para cualquier distribución de Linux moderna.

- Copia de seguridad

Que yo sepa no hay forma de convertir una partición no encriptada en una encriptada. Para crear la partición encriptada es necesario borrar todos los datos que hay en ella, así que, si tienes datos que quieras conservar, tendrás que hacer una copia externa y luego restaurarla.

Por otro lado, es evidente que si pierdes la contraseña de la partición encriptada, pierdes los datos. Actúa en consecuencia.

- Preparando la partición

En primer lugar, necesitas instalar cryptsetup. En Debian:

apt-get install cryptsetup

Ahora vamos a crear el dispositivo. Suponiendo que queremos encriptar la partición /dev/sdb2

root@jose:~# cryptsetup luksFormat /dev/sdb2
WARNING!
========
This will overwrite data on /dev/sdb2 irrevocably.
Are you sure? (Type uppercase yes):
YES
Enter LUKS passphrase:
Verify passphrase:

Bien, ya hemos creado nuestra partición y le hemos dado una clave. Ahora tenemos que abrirla :

root@jose:~# cryptsetup luksOpen /dev/sdb2 vol-backup
Enter passphrase for /dev/sdb2:

IMPORTANTE: a partir de ahora, sólo nos referiremos al dispositivo como /dev/mapper/vol-backup (o cualquier otro nombre que quieras darle en la orden luksOpen), no como /dev/sdb2.

Una vez abierta, creamos nuestro sistema de ficheros encima. Yo uso ext4, puedes usar el que quieras.

root@jose:~# mkfs.ext4 /dev/mapper/vol-backup 


Nuestro sistema ya está listo para ser utilizado. Vamos a cerrarlo para enlazar con la siguiente sección:

cryptsetup luksClose  vol-backup

- Usando la partición.

Cuando quieras usar la partición encriptada, primero tienes que abrirla (dando la contraseña), y luego montarla. Recuerda que, una vez la has abierto, tienes que acceder a la partición a través de /dev/mapper/ :


root@jose:~# cryptsetup luksOpen /dev/sdb2 vol-backup
Enter passphrase for /dev/sdb2: 
root@jose:~# mount /dev/mapper/vol-backup /mnt/backup

Cuando hayas terminado, la desmontas y la cierras:


umount /mnt/backup/
cryptsetup luksClose  vol-backup