Introducción
Las versiones recientes de los sistemas operativos como Ubuntu permiten que se cifren las particiones (usualmente la que contiene a /home) para evitar así que terceros tengan acceso a la información contenida en estas si se obtiene el acceso físico a las mismas.
Esta mejora en la seguridad algunas veces se convierte en problema cuando por razones válidas es necesario acceder a esta partición desde otro sistema diferente del original. Tal es el caso cuando se desactiva o pierde la contraseña del usuario administrador.
En ese caso es necesario iniciar el sistema con un livecd de Ubuntu (o montarlo físicamente en otro equipo), montar la partición que contenga al sistema de archivos raíz y realizar las modificaciones necesarias en los archivos de configuración para garantizar el futuro acceso a la cuenta de usuario en cuestión. Estos pasos se ven modificados cuando la partición a montarse se encuentra cifrada.
Montar la partición cifrada
Identificar cual es la partición que se desea montar.
$ sudo fdisk -l Device Boot Start End Blocks Id System /dev/sda1 63 96389 48163+ de Dell Utility /dev/sda2 * 98304 163938303 81920000 7 HPFS/NTFS/exFAT /dev/sda3 163938304 167843839 1952768 82 Linux swap / Solaris /dev/sda4 167845886 234440703 33297409 5 Extended /dev/sda5 167845888 189327359 10740736 83 Linux /dev/sda6 189329408 234440703 22555648 83 Linux
En este ejemplo se determina que la partición que se desea montar temporalmente es /dev/sda5 que contiene al sistema de archivos raíz.
Instalar los paquetes requeridos si estos no se encuentran aún en el sistema.
$ sudo apt-get install lvm2 cryptsetup
Agregar el módulo del kernel necesario para acceder a los dispositivos de bloque cifrados.
$ sudo modprobe dm-crypt
Configurar al módulo de cifrado de Linux para que reconozca a la partición que se va a montar.
$ sudo cryptsetup luksOpen /dev/sda5 crypt1
En este punto el sistema solicita al usuario la contraseña secreta (passphrase) que se utilizó para el cifrado de la partición.
Identificar los grupos de volúmenes cifrados disponibles. El nombre obtenido aquí debe tenerse en cuenta para un paso posterior. En el caso de la partición cifrada por defecto se encontró que el nombre del grupo era ubuntu.
$ sudo vgscan --mknodes
Crear un directorio que servirá como punto de montaje para la partición cifrada.
$ mkdir /montaje
Montar la partición cifrada en el punto de montaje recién creado.
$ sudo mount /dev/ubuntu/root /montaje
A partir de este momento el sistema de archivos cifrado puede accederse normalmente bajo el punto de montaje establecido. Por ejemplo para acceder gráficamente a sus archivos es necesario utilizar las herramientas del sistema.
$ sudo nautilus /montaje
Desbloquear un usuario
Una vez se pueda acceder al sistema de archivos raíz de la máquina afectada es posible realizar tareas de gestión de los usuarios como desbloquear cuentas o cambiar sus contraseñas.
Primero es necesario tomar temporalmente a la partición montada como partición raíz del sistema para que sean tenidos en cuenta sus usuarios durante las tareas de administración y no los del livecd, para hacer esto es necesario ejecutar el siguiente comando.
$ sudo chroot /montaje
Desbloquear las cuentas de usuario requeridas.
$ sudo passwd -u usuario
O simplemente modificar sus contraseñas.
$ sudo passwd usuario
Una vez terminadas las modificaciones que se iban a realizar sobre la partición cifrada se debe reiniciar el sistema normalmente.