¿Puedo desactivar el cifrado de disco completo?

41

Recientemente instalé Ubuntu 12.10 y requiere una frase de contraseña para arrancar (lo instalé con un sistema de archivos encriptado).

¿Tengo que reinstalar para cambiar a un sistema de archivos estándar sin cifrar?

Zzealdor
fuente
¿Cifraste toda la instalación de Ubuntu o solo tu directorio de inicio?
Flimm
Cifré durante la instalación, así que supongo que la instalación completa.
Zzealdor
3
Soy un usuario nuevo, así que no estoy seguro de cómo funcionan las cosas en Linux (¡Estoy completamente harto de Microsoft!)
Zzealdor
@Rinzwind Probablemente no. Este método (ecryptfs) cifra el directorio de inicio y no necesita una contraseña adicional; Se utiliza la contraseña de inicio de sesión.
Jan
1
@ user163872: Las nuevas versiones de Ubuntu (12 y 13) son muy lentas en computadoras antiguas como las netbooks. Debe instalar Lubuntu, que está diseñado para la velocidad y funciona muy rápido en computadoras antiguas / más lentas, incluso con poca RAM (es decir, 512 MB). Lubuntu es casi lo mismo que Ubuntu normal: solo el escritorio / menús son un poco diferentes. Pero todo lo que funciona en Ubuntu normal también funcionará en Lubuntu.
lara

Respuestas:

22

Si Ubuntu solicita una frase de contraseña de cifrado durante el arranque (es decir, en la consola de texto antes de que se muestre la pantalla de inicio de sesión), esto indica que se utilizó un método de cifrado de disco completo. (Hay más de una forma de hacerlo, pero mantendré la respuesta general). El cifrado se maneja mediante una capa de software adicional entre el sistema de archivos y el disco duro físico, no el sistema de archivos en sí.

No hay un método o herramienta simple para deshacer esto. Con cierto conocimiento sobre cómo funcionan los sistemas Linux, se puede hacer. Tendría que mover todo el sistema de archivos (o todos los archivos) a otra partición (con suficiente espacio libre) o HDD externo. Luego, elimine el contenedor cifrado y vuelva a crear el sistema de archivos sin cifrado. Finalmente, asegúrese de que el cargador de arranque reconozca correctamente el nuevo sistema de archivos y mount -aantes de reiniciar.

Si es posible, es mejor evitar este procedimiento lento y propenso a errores. Solo haz una nueva instalación. Para los nuevos usuarios, esta es la opción más rápida y segura.

PD: es probable que pueda cambiar la frase de contraseña de cifrado, posiblemente a una cadena vacía. Luego, descifrar solo requiere presionar Enter. Tal vez pueda ir más allá y suprimir el mensaje de frase de contraseña (ahora inútil). Sin embargo, esto no deshabilita el cifrado. Los datos seguirían cifrados, aunque el cifrado sería inútil ya que la clave se puede adivinar de manera trivial.

ene
fuente
3
En teoría, ¿no debería ser capaz de hacer algo como "dd if = / dev / mapper / sda5_crypt of = / dev / sda5 bs = 32M"?
Roy
@Roy, creo que funcionará si y solo si lo siguiente es cierto: 1. ddy los controladores subyacentes no escriben hasta que hayan terminado de leer cada bloque (probablemente haya indicadores y configuraciones para garantizar esto) 2. la lectura / escritura los bloques no se superponen a los bordes de los bloques de cifrado (puede verificarse, pueden implicar algunas matemáticas) 3. la información importante del encabezado necesaria para el descifrado no se sobrescribe antes de la finalización (verifique el formato de cifrado subyacente, tal vez el proceso de principio a comienzo). Creo que es posible, pero necesitaría una configuración y análisis más cuidadosos.
fuzzyTew
20

Debajo está mi solución que funcionó. Tenga en cuenta que no soy un especialista en Linux, por lo que puede que no sea la mejor solución. No pude encontrar uno mejor de todos modos.

Migración de la instalación de FDE a una partición sin cifrar

NOTA : Cada vez que digo, quiero decir

/dev/sda1 - boot partition
/dev/sda5 - encrypted partition
/dev/sda3 - clean non-encrypted EXT4 partition
/dev/sda2 - my newly created swap partition

Copiar datos del sistema de archivos raíz encriptado

Arrancar desde un CD en vivo. He usado Ubuntu 13.10 32bit ISO de escritorio.

Monta tu partición:

sudo cryptsetup luksOpen /dev/sda5 crypt1

Copie sus datos de origen en la partición de destino y guarde dd PID en la variable pid:

sudo dd if=/dev/ubuntu-vg/root of=/dev/sda3 bs=1M & pid=$!

Esto hará ping a cada segundo proceso dd con señal USR1 y estado de resultados dd:

while sudo kill -USR $pid; do sleep 1; done

Alternativa al monitoreo de DD

Si no le gusta el "método while" anterior, puede usar watch. Abra una ventana de terminal diferente y obtenga el PID:

pgrep -l '^dd$' | awk '{ print $1 }'

Reemplace con su ID de proceso:

watch kill -USR1 <pid>

Debería ver la salida en su terminal dd cada 2s.

Configuración del nuevo sistema de archivos raíz y particiones

Cuando termine, puede montar su partición no cifrada para ver si está bien:

sudo mount /dev/sda3 /mnt

Después de eso desmonta tu partición:

sudo umount /dev/sda3

Liberar la partición de la cripta:

sudo cryptsetup luksClose /dev/sda5

Corre gparted. Elimine su partición LUKS (tanto extendida como lógica). Cambie el tamaño de su / dev / sda3 y muévase a la izquierda. Crear partición de intercambio.

Nota: Mover su / dev / sda3 hacia la izquierda puede llevar mucho tiempo. Para mí, tardó 30 minutos en una partición de 120 GB y una unidad SSD. Si tiene 500GB + HDD, prepárese para unas pocas horas de espera. Es posible que desee crear un intercambio antes de su partición en lugar de mover su / dev / sda3.

Cree un nuevo sistema de archivos de intercambio en su partición de intercambio:

sudo mkswap /dev/sda2 

y almacenar en algún lugar el UUID.

Obtenga su UUID de partición raíz:

sudo blkid /dev/sda3

Editar fstab:

sudo nano /etc/fstab

Eliminar o comentar líneas superpuestas y tmpfs.

Agregar línea reemplazando con el resultado blkid:

UUID=<uuid_root> /  ext4 errors=remount-ro 0 1
UUID=<uuid_swap> none swap sw 0 0

Remover archivo:

rm /etc/crypttab

Actualice sus initramfs para evitar errores como "cryptsetup: evms_activate no está disponible":

sudo -i
mount /dev/sda3 /mnt
mount -t proc none /mnt/proc
mount -o bind /sys /mnt/sys
mount -o bind /dev /mnt/dev
mount /dev/sda1 /mnt/boot
chroot /mnt /bin/bash
apt-get remove --purge cryptsetup
update-initramfs -u -k all

Notas finales y solución de problemas

Funcionó para mí, sin embargo, existe la posibilidad de que hacer lo anterior paso a paso no funcione para usted. Antes de que descubriera el método update-initramfs, reinstalé el kernel varias veces y también estaba modificando grub. Sin embargo, no debería ser un caso para usted. Recuerde que las indicaciones de arriba pueden borrar sus datos, así que ten cuidado y hacer BACKUP , antes de proceder eso.

En caso de que tenga problemas de kernel (chroot y / boot montado):

uname -r
sudo apt-get install --reinstall linux-image-3.X.Y-ZZ-generic

Por supuesto, reemplace linux-image-3.XY-ZZ con la fecha de kernel de uname.

o GRUB (fuera de chroot):

sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
sudo apt-get install -y boot-repair && (boot-repair &)

Más detalles: https://help.ubuntu.com/community/Boot-Repair

Buena suerte

NeverEndingQueue
fuente
1
Creo que tiene que reemplazar el UUID de la partición de intercambio /etc/initramfs-tools/conf.d/resumemanualmente y recomendaría copiar el contenido del sistema de archivos con cp -ao rsync -aya que eso sería más rápido en general y más seguro para los SSD.
LiveWireBT
Gracias por hacer mi elaboración más fácil de usar. No hice el cambio de currículum, también estaba asustado usando cp o rsync, pensé que dd (copia sin formato de dispositivo a dispositivo) es la herramienta adecuada para tales tareas. Estaba haciendo eso en VM, pero la imagen se colocó en SSD. ¿Puede elaborar el: "más seguro para SSD" por favor?
NeverEndingQueue
El uso de ddcopias de toda la partición, incluso los bloques que deberían estar vacíos, lo que provoca escrituras innecesarias en el SSD (y en algunos incluso perjudica el rendimiento de escritura en casi todas las celdas). Hace unos años, yo y algunos otros también descubrimos que copiar ddy activar TRIM (opción de descarte EXT4) hará que TRIM elimine los bloques que cree que están vacíos y lo dejará con una instalación rota después de unas horas.
LiveWireBT
En el primer método de monitoreo debe ser USR1 en lugar de USR. Sé que es obvio, pero puede ser un problema para los novatos como yo;)
goodfellow
9

En caso de que esté bien mantener el cifrado, pero para desactivar el mensaje de frase de contraseña, un enfoque mucho más simple es establecer una contraseña trivial como "contraseña" y luego guardar esa contraseña trivial en initramfs en texto sin formato. Deshabilite la contraseña de cifrado LUKS .

Esencialmente, agregue un script de enlace que a su vez agrega un "script clave" a initramfs. Por lo general, estos scripts se utilizan para obtener la contraseña a través de Bletooth, desde una memoria USB, etc., pero en este caso, simplemente imprima la contraseña trivial.

Richard A
fuente