Permítanme comenzar diciendo que no soy nuevo en LUKS. He configurado LUKS con guiones de teclado varias veces con y sin LVM. Sin embargo, no estoy seguro de lo que realmente está sucediendo aquí. Tengo un sistema que tiene una sola partición encriptada. Mi disco está organizado de la siguiente manera:
# lsblk NOMBRE MAJ: MIN RM TAMAÑO RO TIPO MOUNTPOINT sda 8: 0 0 128G 0 disco Dasda1 8: 1 0 128G 0 parte ├─vg0-root 253: 1 0 20G 0 lvm / ├─vg0-secure 253: 6 0 100M 0 lvm Cure └─secure 253: 7 0 98M 0 crypt / root / secure └─vg0-swap 253: 4 0 1G 0 lvm [SWAP]
Mi /etc/crypttab
archivo se ve así
# No se requiere UUID aquí ya que la ruta al LV no cambiará secure / dev / vg0 / secure none luks, keyscript = / lib / cryptsetup / scripts / insecure
Mi /lib/cryptsetup/scripts/insecure
archivo es ejecutable y se ve así
#!/bin/sh
# My actual file looks somewhat different because it dumps the key file with dd.
# This accomplishes virtually the same thing though.
echo -n "my-encryption-password"
He corrido update-initramfs -k all -u
varias veces después de configurar crypttab y poner mi archivo de script en su lugar.
Por lo que puedo decir, mi archivo de script ni siquiera se está copiando en el archivo initrd.img. Ahora que lo pienso, no creo que se copie al archivo initrd.img ya que la partición raíz no está encriptada y el archivo de script debería ser fácilmente accesible desde allí.
Al reiniciar, el sistema ve el registro de la tabla de cifrado y solicita una contraseña (que en mi caso no existe porque la única clave es un archivo de claves lleno de bits aleatorios) en lugar de usar el script para desbloquear la partición LUKS. Intenté sacar LUKS del LVM y ponerlo en sda2, y los resultados fueron los mismos. También sé que el script funciona porque cryptsetup luksOpen /dev/vg0/secure secure -d - <<< "$(/lib/cryptsetup/scripts/insecure)"
funciona de maravilla y descifra mi partición LUKS.
He intentado esto en Ubuntu 16.04.2 y Ubuntu Mate 16.04.2 con los mismos resultados. He usado claves antes sin ningún problema. La única diferencia era que, en el pasado, mi / partición siempre estaba encriptada. Si alguien puede arrojar algo de luz, lo agradecería. Solo quiero una partición cifrada muy pequeña porque planeo clonar este sistema, y no quiero clonarlo con toda la partición / cifrada.
ACTUALIZACIÓN 2017-04-26
Al buscar en los registros, encontré una línea con el siguiente error que no tiene sentido. ¿Desde cuándo 'keyscript = / path / to / script' es una opción desconocida para crypttab?
... systemd-cryptsetup [737]: Se encontró una opción desconocida / etc / crypttab 'keyscript = / lib / cryptsetup / scripts / insecure', ignorando.
Solo por diversión, intenté eliminar la opción de script y usar un archivo de claves, ¡y todo funcionó! De hecho, probé otras opciones como keyfile-offset, y también funcionan. Por lo tanto, el problema radica en algún lugar con la opción de script. ¿Alguien tiene alguna idea de por qué?