Estoy en Ubuntu 13.04 usando cifrado de disco completo (LVM sobre LUKS).
Me gustaría incorporarlo luksSuspend
al procedimiento de suspensión (y luego usarlo luksResume
) para poder suspenderlo en la RAM sin dejar material clave en la memoria y la raíz desbloqueada.
He intentado durante las últimas 7 horas portar un script para Arch Linux , hasta ahora sin éxito: honestamente, no tengo idea de lo que estoy haciendo ...
¿Alguien puede ayudarme a portar esto (o crear algo como esto desde cero)? O, al menos, ¿alguien puede indicarme documentación sobre cómo conectar cosas a los procedimientos de suspensión y cómo mantener los binarios y scripts necesarios (como cryptsetup) disponibles incluso después de que todo el IO a root haya sido bloqueado (por luksSuspend
)?
En cuanto a cómo mantener los binarios y scripts necesarios disponibles para reanudar, esta otra publicación de blog (también para Arch) los copió /boot
; Sin embargo, me gustaría usar algo más en las líneas que Vianney usó en el guión que mencioné antes, porque ese enfoque parece ser un poco más elegante en este aspecto.
pm-suspend
y parecía que estaba casi allí. Sin embargo, descubrí que no puedo simplemente suspender el sistema (echo -n "mem" > /sys/power/state
) después de congelar la raíz fs (cryptsetup luksSuspend ...
), porque eso requiere algo de E / S todavía ...Respuestas:
Me he encontrado con el mismo problema, así que tomé otra oportunidad de portar el mismo script, que puedes ver aquí . No toca ningún almacenamiento no volátil después
luksSuspend
, por lo que funciona incluso con cifrado de disco completo real con un cifrado / arranque. Sin embargo, deberá tener cuidado: ¡puede que no funcione como se espera ocasionalmente!El script portado hace lo siguiente:
/sys
. Ej/proc
./dev
,/run
) Al montaje ramfsluksSuspend
y pone la computadora en suspensiónluksResume
activación, vuelva a montar los sistemas de archivos, reinicie los servicios, desmonte los montajes de enlace en el montaje initramfsTodavía tengo que hacer pruebas exhaustivas en mi script, pero parece funcionar de manera confiable para mí. Si usa otro sistema de archivos (es decir, no ext4 o btrfs), puede experimentar problemas con la barrera, por lo que también deberá modificar el script.
De cualquier manera, es bueno probar y verificar que los scripts funcionen primero. Si experimenta bloqueos al intentar poner Linux en S3 (es decir, en
echo mem > /sys/power/state
), entonces debería poder recuperar:sudo cryptsetup luksResume anything_here
starting version xxx
se muestra en el nuevo vt), cambie al tty que abrió anteriormente y ejecutesudo cryptsetup luksResume your_luks_device_name_here
/run/initramfs
:sudo chroot /run/initramfs /bin/ash
luksResume
:cryptsetup luksResume your_luks_device_name_here && exit
/run/initramfs
y volver a montar su sistema de archivos raíz con barrera si corresponde.fuente
No tengo experiencia con esta configuración, pero muchas personas afirman tener éxito en esto. Aquí hay un par de ellos.
dm-crypt con LUKS - Cifrado de la partición de intercambio
Cómo: Disco duro completamente encriptado, incluida la partición de suspensión en disco con Ubuntu 6.10 Edgy Eft
ubuntu-full-disk-encryption-lvm-luks
Sin embargo, ninguno de ellos usa luksSuspend (que podría ser la razón por la que funcionan).
fuente
Pasé algún tiempo haciendo esto completamente funcional en Ubuntu 15.10. Si intenta hacer que esto funcione en ext2, ext3 o ext4, deberá actualizar / etc / fstab para montar el volumen con la opción 'nobarrier'. De lo contrario, sugiero usar BTRFS.
Una vez que su sistema de archivos esté preparado, use el script aquí: https://github.com/Microcentillion/ubuntu-lukssuspend
fuente