Cifrado de disco completo con dm-crypt (sin LUKS)

8

Actualmente estoy tratando de lograr el cifrado de disco completo usando dm-crypt en modo plano sin encabezado LUKS con una /bootmemoria USB separada .

Mi objetivo principal es lograr una negación plausible en una distribución basada en Debian. Por ahora, he logrado encriptar particiones usando cryptsetupe instalar la /bootpartición en una llave USB separada. Todo va como debería y debido a que el encabezado para el cifrado no está almacenado en LUKS, necesito ingresarlo manualmente en la pantalla de initramfs, pero en este paso simplemente recibo un error que indica que no hay cryptsetup en initramfs ("/ bin / sh: cryptsetup: not found ") al intentar analizar el encabezado.

En conclusión:

  • dev/sdaencriptado usando dm-crypt( /rooty /homevolúmenes) con:
cryptsetup --hash=sha512 --cipher=twofish-xts-plain64 create crypt /dev/sda
  • dev/sdb palanca de arranque con grub instalado

Puedo arrancar con éxito desde el bootstick. Veo la pantalla de inicio de Ubuntu durante unos 20 segundos, que es lo que quería lograr para una negación plausible y luego cae en initramfs quejándose de no poder encontrar, lo /dev/mapper/rootque también es algo que quería lograr.

El problema es que cuando quiero analizar la línea cryptsetup que me permitiría ingresar una contraseña y continuar con el arranque, initramfs se queja de "cryptsetup: not found".

Supongo que esta queja es cierta. Mi pregunta es: ¿cómo instalar cryptsetup en initramfs para que permita un arranque más rápido para la solicitud de contraseña?

Además, sé que estoy omitiendo algo al agregar las entradas apropiadas /etc/fstab, /etc/crypttaby los dispositivos no se encuentran durante el inicio.

Estas son las guías que he encontrado y utilizado para configurar toda la configuración actual, tal vez esto aclarará cosas que no cubrí en mi pregunta:

El primero está un poco desactualizado y el segundo es para Arch Linux, pero he usado dos de ellos con la última instalación de Lubuntu con pequeños ajustes.

Rowen
fuente
1
espere el tenedor truecrypt y haga una solicitud de función ...
RobotHumans

Respuestas:

2

De acuerdo con initramfs-tools (8) , uno puede agregar programas a la imagen initrd agregando, por ejemplo, lo siguiente a un script de enlace :

copy_exec / sbin / cryptsetup / sbin

Se pueden encontrar ejemplos de scripts de gancho en /usr/share/initramfs-tools/hooksy en mi sistema Ubuntu, de /usr/share/initramfs-tools/hooks/cryptroothecho se está agregando /sbin/cryptsetupa la initrdimagen.

Ejemplo:

$ gzip -dc /boot/initrd.img-`uname -r` | cpio -tv 2> / dev / null | grep cryptsetup
=> No se incluye cryptsetup, todavía.

$ cat / etc / initramfs-tools / hooks / fde
#! / bin / sh

. / usr / share / initramfs-tools / hook-functions
copy_exec / sbin / cryptsetup / sbin

$ sudo chmod 0755 / etc / initramfs-tools / hooks / fde
$ sudo update-initramfs -u

$ gzip -dc /boot/initrd.img-`uname -r` | cpio -tv 2> / dev / null | grep cryptsetup
-rwxr-xr-x 1 raíz raíz 59248 21 de agosto 04:04 sbin / cryptsetup
-rw-r - r-- 1 raíz raíz 158848 21 de agosto 04:04 lib / x86_64-linux-gnu / libcryptsetup.so.4
ckujau
fuente