En primer lugar, si desea instalar Ubuntu encriptado en un disco duro, reemplazando cualquier partición y sistema operativo existente, puede hacerlo directamente desde el instalador gráfico. Este proceso manual solo es necesario para el arranque dual.
Esta respuesta ha sido probada con Ubuntu 13.04.
Arranque desde un DVD en vivo de Ubuntu o una memoria USB, y seleccione "Probar Ubuntu".
Cree dos particiones usando GParted incluido en el disco en vivo. La primera partición no debe estar formateada y debe ser lo suficientemente grande para root e intercambio, en mi ejemplo, esto es /dev/sda3
. La segunda partición debe ser de varios cientos de megabytes y formateada en ext2 o ext3, no estará encriptada y estará montada /boot
(en mi ejemplo, esto es /dev/sda4
).
En esta captura de pantalla, tengo una instalación de Ubuntu sin cifrar existente en dos particiones: /dev/sda1
y /dev/sda5
, resaltar en el círculo a la izquierda. He creado una partición sin formato /dev/sda3
y una partición ext3 en /dev/sda4
, destinada a la instalación cifrada de Ubuntu, resaltada en el círculo a la derecha:
Cree un contenedor LUKS con estos comandos. Reemplace /dev/sda3
con la partición sin formato creada anteriormente y cryptcherries
con un nombre de su elección.
sudo cryptsetup luksFormat /dev/sda3
sudo cryptsetup luksOpen /dev/sda3 cryptcherries
Advertencia : Notará que el luksFormat
paso se completó muy rápidamente, ya que no borra de forma segura el dispositivo de bloque subyacente. A menos que solo esté experimentando y no le importe la seguridad contra varios tipos de ataques forenses, es fundamental inicializar correctamente el nuevo contenedor LUKS antes de crear sistemas de archivos en él. Escribir ceros en el contenedor asignado hará que se escriban datos aleatorios fuertes en el dispositivo de bloque subyacente. Esto puede llevar un tiempo, por lo que es mejor usar el pv
comando para monitorear el progreso:
### Only for older releases, e.g. not for 19.04, `pv` is not included in the repo must be added first
# sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
# sudo apt-get update
sudo apt-get install -y pv
sudo sh -c 'exec pv -tprebB 16m /dev/zero >"$1"' _ /dev/mapper/cryptcherries
o, si está realizando una instalación sin conexión y no puede obtener fácilmente pv
:
sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
Dentro del contenedor LUKS montado, cree un volumen físico LVM, un grupo de volúmenes y dos volúmenes lógicos. El primer volumen lógico se montará en /
, y el segundo se usará como intercambio. vgcherries
es el nombre del grupo de volúmenes, y lvcherriesroot
y lvcherriesswap
son los nombres de los volúmenes lógicos, puede elegir el suyo propio.
sudo pvcreate /dev/mapper/cryptcherries
sudo vgcreate vgcherries /dev/mapper/cryptcherries
sudo lvcreate -n lvcherriesroot -L 7.5g vgcherries
sudo lvcreate -n lvcherriesswap -L 1g vgcherries
Cree sistemas de archivos para los dos volúmenes lógicos: (También puede realizar este paso directamente desde el instalador).
sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot
sudo mkswap /dev/mapper/vgcherries-lvcherriesswap
Sin reiniciar , instale Ubuntu usando el instalador gráfico (el acceso directo está en el escritorio en Xubuntu 18.04), eligiendo la partición manual. Asignar /
a /dev/mapper/vgcherries-lvcherriesroot
y /boot
a la partición no cifrada creado en el paso 2 (en este ejemplo, /dev/sda4
).
Una vez que el instalador gráfico haya finalizado, seleccione "continuar con las pruebas" y abra un terminal.
Encuentre el UUID de las particiones LUKS ( /dev/sda3
en este caso), lo necesitará más adelante:
$ sudo blkid /dev/sda3
/dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS"
Monte los dispositivos apropiados en las ubicaciones apropiadas /mnt
y realice el chroot en él:
sudo mount /dev/mapper/vgcherries-lvcherriesroot /mnt
sudo mount /dev/sda4 /mnt/boot
sudo mount --bind /dev /mnt/dev
sudo chroot /mnt
> mount -t proc proc /proc
> mount -t sysfs sys /sys
> mount -t devpts devpts /dev/pts
Cree un archivo nombrado /etc/crypttab
en el entorno chrooteado para contener esta línea, reemplazando el valor de UUID con el UUID de la partición LUKS y vgcherries
con el nombre del grupo de volúmenes:
# <target name> <source device> <key file> <options>
cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries
Ejecute el siguiente comando en el entorno chrooteado:
update-initramfs -k all -c
Reinicie y arranque en Ubuntu encriptado. Debería solicitar una contraseña.
Verifique que esté utilizando la partición cifrada /
ejecutando mount
:
$ mount
/dev/mapper/vgcherries-lvcherriesroot on / type ext4 (rw,errors=remount-ro)
/dev/sda4 on /boot type ext3 (rw)
# rest of output cut for brevity
Compruebe que está utilizando la partición de intercambio cifrada (no ninguna partición de intercambio no cifrada de ninguna otra instalación) ejecutando este comando:
$ swapon -s
Filename Type Size Used Priority
/dev/mapper/vgcherries-lvcherriesswap partition 630780 0 -1
Compruebe que puede arrancar en modo de recuperación, no desea saber más tarde durante una emergencia que el modo de recuperación no funciona :)
Instale cualquier actualización, que probablemente reconstruya el ramdisk y actualice la configuración de grub. Reinicie y pruebe tanto el modo normal como el modo de recuperación.