Una de las cosas de las que me acostumbre con Fedora fue a usar todas las particiones cifradas, y Fedora dejaba hacerlo a gusto.

Hay muchas distribuciones Linux que dicen soportar encriptacion pero solo cifran los datos y no la partición n el sistema de archivos, o particionan lo que ellos quieren y no podemos personalizarlo. Las únicas distribuciones que me dejo hacerlo a gusto fueron Fedora y Debian a medias.

No encontré en internet ninguna guía similar a esta para poder hacer lo que quería en otras distribuciones así que me tuve que sentar e ingeniármelas y jugar con las entrañas de Linux, espero que a alguien le sirva.

Para este tutorial supongamos que el disco duro en el que trabajaremos se llama sda

Todos los comandos los usamos como root o con sudo, aquí omití usar sudo para simplificar

1 Paso

Arrancamos con un live-cd cualquiera, no necesariamente del que queremos instalar.

Crear 2 particiones con el particionador que queramos, como por ejemplo gparted

La primera partición de unos 300Mb bastaran y le añadimos boot como flag

Creamos una segunda partición sin formato y con flag lvm del resto del tamaño que tengamos disponible

Para este ejempo /dev/sda1 es la particion boot de 300Mb y /dev/sda2 es una partición sin formato de 500Gb

2 Paso

Desde la consola ejecutamos los siguientes comandos en orden

#Por las dudas cargamos el modulo de cifrado
modprobe dm-crypt

#Ciframos la partición sin formato, nos pedirá que le asignemos
#un password
cryptsetup -c aes-xts-plain64 -y -s 512 luksFormat /dev/sda2

#La desciframos la partición que se llamara lvm a secas
cryptsetup luksOpen /dev/sda2 lvm

#Inicializamos la partición llamada lvm que ahora
#esta desifrada
pvcreate /dev/mapper/lvm

#Creamos un grupo de volumen
vgcreate main /dev/mapper/lvm

#Creamos una unidad lógica donde ira montado
#nuestro sistema raiz, para el ejemplo yo le asigne
#20Gb pero ustedes pueden asignarles lo que quieran
lvcreate -L 20GB -n root main

#Repetimos el paso para crear una partición 
#para swap
lvcreate -L 4GB -n swap main

#Creamos una tercera unidad para montar 
#el /home y le asignamos el resto del espacio
#disponible
lvcreate -l 100%FREE -n home main

#Formateamos la swap
mkswap /dev/mapper/main-swap

#Formateamos la particion raiz
mkfs.ext4 /dev/mapper/main-root

#Formateamos el home
mkfs.ext4 /dev/mapper/main-home

Por las dudas reinician

Paso 3

Arrancan de nuevo con el live-cd y abren la consola

Ejecutan lo siguiente

cryptsetup luksOpen /dev/sda2 lvm
sudo pvscan
sudo vgscan
sudo lvscan
sudo vgchange -a y

Paso 4

Instalan el sistema pero eligen particionamiento manual

En la partición /dev/sda1 (la de 300Mb que esta sin cifrar) le asignan punto de montaje /boot formatean como ext3

El punto de montaje / se lo asignan /dev/mapper/main-root y lo formatean como ext4

El punto de montaje /home se lo asignan /dev/mapper/main-home y lo formatean como ext4

Luego de instalador reinician y tienen que volver a arrancar con live-cd, el sistema no va a arrancar todavía

Paso 5

Una ves que arrancamos con un live-cd vamos a la consola y ejecutamos lo siguiente


#Deciframos nuevamente las particiones
cryptsetup luksOpen /dev/sda2 lvm
pvscan
vgscan
lvscan
vgchange -a y

#Aqui montamos las particiones
mount /dev/mapper/main-root /mnt
mount /dev/sda1 /mnt/boot
mount /dev/mapper/main-home /mnt/home
mount -t ext3 /dev/sda1 /mnt         
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
mount -o bind /dev /mnt/dev

#Mejor que explicar esto
# https://es.wikipedia.org/wiki/Chroot
chroot /mnt /bin/bash

#Esto ya no se esta ejecutando en el live-cd
#sino que los cambios que hagamos de ahora en mas 
#se veran en el sistema que acabamos de instalar
grub-install /dev/sda

apt-get update
apt-get install cryptsetup

#Cargamos los siguientes modulos
modprobe xts
modprobe aes-x86_64
modprobe sha256

#Averiguamos el UUID de disco, lo copiamos
cryptsetup luksUUID /dev/sda2

#Nos dara algo como esto
fac31b56-5ac0-4feb-a80a-987d2b7446e4

#En /etc/crypttab escribimos solo que cambian
#fac31b56-5ac0-4feb-a80a-987d2b7446e4 por la que les 
#haya dado a ustedes, en mi caso es
lvm UUID=fac31b56-5ac0-4feb-a80a-987d2b7446e4 none luks

#Configuramos para que los siguientes módulos
#se carguen desde el inicio
echo xts >> /etc/initramfs-tools/modules
echo aes_i586 >> /etc/initramfs-tools/modules
echo sha256 >> /etc/initramfs-tools/modules

#Actualizamos la imagen de arranque
mount /boot
update-initramfs -u

exit
umount /mnt/boot
umount /mnt/proc
umount /mnt/dev
umount /mnt/sys

Ahora que debería quedar funcionando el sistema, ya pueden arrancar el sistema instalado (sin el live-cd).

Leave a Reply

Your email address will not be published. Required fields are marked *

Discover more from Alvaro De León

Subscribe now to keep reading and get access to the full archive.

Continue reading