Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[mini-howto] Sistema totalmente cifrado con luks(act 6/3/11)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Spanish
View previous topic :: View next topic  
Author Message
hashashin
n00b
n00b


Joined: 22 Sep 2007
Posts: 37

PostPosted: Fri Oct 12, 2007 5:38 pm    Post subject: [mini-howto] Sistema totalmente cifrado con luks(act 6/3/11) Reply with quote

Nota: Actualizado 06/03/2011

En este mi primer howto y post en este foro vamos a ver como cifrar nuestros discos al instalar gentoo, la partición raíz del sistema, la swap y las otras particiones que tengamos. Me ha motivado el publicar esto porque no he encontrado ningún manual de como hacerlo en castellano y es bastante sencillo y útil sobretodo en portátiles. Depositaremos las keys en un pendrive usb para no tener que introducir una password en cada arranque del sistema al montar la partición raíz.

Este howto es para nuevas instalaciones pero podéis crearos un stage4 de vuestro sistema actual y usarlo en la instalación por ejemplo.

Necesitamos
-livecd Gentoo minimal.
-pendrive o floppy.

Bien, arrancamos el sistema con el livecd, conectamos el pendrive que queremos usar y lo montamos(también valdría un floppy) y ejecutamos:

Code:
# head -c1024 /dev/urandom > /mnt/puntomontaje/.key

con esto creamos una llave aleatoria de 1024 bits y la guardamos en el dispositivo removible.
Imaginemos que nuestro disco está dividido así:
Quote:
/dev/sda1 >> /boot
/dev/sda2 >> swap
/dev/sda3 >> /
/dev/sda5 >> /home
/dev/sda6 >> /tmp

Algo recomendable pero opcional seria ejecutar shred en todas las particiones para asegurarnos que todos los datos anteriores son destruidos, esto puede tardar mucho, mucho tiempo:

Code:
# shred -v -n 2 /dev/sda3
# shred -v -n 2 /dev/sda1
# shred -v -n 2 /dev/sda2
# shred -v -n 2 /dev/sda5
# shred -v -n 2 /dev/sda6


Una vez echo esto o si os habéis saltado este paso vamos a crear los volúmenes cifrados:

Code:
# cryptsetup luksFormat -s 256 /dev/sda3

nos pedirá una clave que luego usaremos para añadir la key que creamos antes. Aunque este pass se puede eliminar una vez añadida la key, es recomendable que sea una pass segura y la conservemos por si el archivo key fuera comprometido y tuviéramos que revocarlo (O sí tú perro se come el floppy/pendrive :wink: ).
Hacemos los mismo con el resto de particiones menos con la partición donde tengamos el /boot:

Code:
# cryptsetup luksFormat -s 256 /dev/sda5

etc...
Añadimos el archivo key que tenemos en el usb o floppy:

Code:
# cryptsetup luksAddKey /dev/sda3 /mnt/puntomontaje/.key

Nos pedirá la clave que usamos al formatear la partición.
Hacemos lo mismo con el resto, si queremos podemos crear una key para cada partición y tenerlas en dispositivos removibles diferentes, eso ya es decisión de cada uno y de su nivel de paranoia.

Lo siguiente es hacer la particiones cifradas accesibles al sistema y formatearlas:

Code:
# cryptsetup luksOpen /dev/sda3 root
# cryptsetup luksOpen /dev/sda5 home


la partición swap y la que usemos como /tmp no hace falta abrirlas ahora.

Si hacemos ahora un:

Code:
# ls /dev/mapper

tendríamos que ver algo parecido a esto:
Quote:
# ls /dev/mapper/
control root home

Formateamos las particiones cifradas con nuestro sistema de archivos preferido(creo que hay problemas con reiser4), yo usaré reiserfs 3:

Code:
# mkreiserfs /dev/mapper/root
# mkreiserfs /dev/mapper/home


Ahora seguimos el manual de instalación de gentoo desde después prepare sus discos hasta llegar al punto de configurar el kernel. En el chroot instalamos genkernel y cryptsetup.

Code:
# emerge -av genkernel cryptsetup
# genkernel --menuconfig --luks --dmraid all


Deberemos entrar en la sección 'Device Drivers' -> 'Multi-device support (RAID and LVM)' y activar soporte para las opciones 'device-mapper' y 'dm-crypt'. Importante compilarlas estáticamente en el kernel así como los drivers necesarios para el usb/floppy y los drivers especí­ficos del disco duro.

Ahora seguimos con el manual de instalación hasta el punto donde tenemos de configurar grub.
El grub.conf quedaria así:
Quote:
title GNU/Linux Gentoo
root (hd0,0)
kernel /kernel-genkernel-x86_64-2.6.36-gentoo-r5 root=/dev/ram0 crypt_root=/dev/sda3 root_key=/.key root_keydev=/dev/sdXX real_root=/dev/mapper/root
initrd /initramfs-genkernel-x86_64-2.6.36-gentoo-r5

Explicaré un poco las opciones de luks:

    crypt_root=/dev/sda3 >> particion raiz cifrada.
    real_root=/dev/mapper/root >> partición raiz una vez "descrifada".
    root_key=/.key >> nombre del archivo key
    keydev=/dev/sdXX >> unidad removible, si no la encuentra aquí buscará en el resto de dispositivos el archivo key.


Bien ahora retocaremos el archivo /etc/fstab para dejarlo en algo así:
Quote:
/dev/sda1 /boot ext2 noauto,noatime 1 2
/dev/mapper/root / reiserfs noatime 0 1
/dev/mapper/home /home reiserfs noatime 1 2
/dev/mapper/tmp /tmp reiserfs defaults,noexec,noatime,nosuid,nodev 1 2
/dev/mapper/crypt-swap none swap sw 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro,users 0 0
/dev/fd0 /mnt/floppy auto noauto 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
proc /proc proc nodev,nosuid,noexec 0 0

Ajustamos también el archivo de cryptsetup: /etc/conf.d/dmcrypt para dejarlo conforme a nuestra configuración:
Quote:
swap=crypt-swap
options='-s 256 -d /dev/urandom -c aes-cbc-essiv:sha256 -h sha256'
source='/dev/sda2

target=tmp
source='/dev/sda6'
key='/.key'
remdev='/dev/sdXX' # unidad removible AJUSTAR
options='-s 256 -d /dev/urandom -c aes-cbc-essiv:sha256 -h sha256'
pre_mount='/sbin/mkreiserfs -f -f ${dev}'
post_mount='chown root:root ${mount_point}; chmod 1777 ${mount_point}'

target=home
source='/dev/sda5'
key='/.key'
options="-c blowfish-cbc-essiv:sha256"
remdev='/dev/sdXX' # unidad removible AJUSTAR
post_mount='chown root:root ${mount_point};

Seguimos con el manual de gentoo pero cuando llegue al punto de desmontar las particiones también deberemos ejecutar esto para cerrarlas completamente:

Code:
# cryptsetup luksClose root
# cryptsetup luksClose home

etc...
Reiniciamos, ahora tendreis un sistema cifrado y deberia preguntar por el pendrive/floppy al montar la partición.
_________________
The world will end in 5 minutes. Please log out.
We are Microsoft. Unix is irrelevant. Openness is futile. Prepare
to be assimilated.
Blog


Last edited by hashashin on Sun Mar 06, 2011 2:04 am; edited 7 times in total
Back to top
View user's profile Send private message
sefirotsama
l33t
l33t


Joined: 11 Apr 2006
Posts: 791
Location: sefirot@catalunya # cd ~

PostPosted: Mon Oct 15, 2007 7:46 am    Post subject: Reply with quote

Muy muy bueno, aunque no me atrevo a usarlo con un particion raiz haré pruebas con un disco externo y más tarde puede que con /home y /tmp, todo depende.


Sobretodo gracias por este manual, muy util
_________________
Linux User #415604

GnuPG Key: 185F CF01 0FEE D196 D076 65E2 E3EE 52E7 7AA5 4FEB
«Dios no juega a los dados, usa /dev/random.»
Back to top
View user's profile Send private message
hashashin
n00b
n00b


Joined: 22 Sep 2007
Posts: 37

PostPosted: Fri Oct 19, 2007 11:57 am    Post subject: Reply with quote

Yo lo estoy usando en el sobremesa de casa y en el portátil del curro, en ambos sin problemas y sin bajada de rendimiento apreciable. Incluso el sobremesa a sobrevivido a 2 apagones 8O . Parece bastante sólido el tema, (cruzo dedos) igualmente si tenéis algo importante en el disco respaldarlo antes de hacer cosas de estas :twisted:. Gracias por el comentario.


Salud.
_________________
The world will end in 5 minutes. Please log out.
We are Microsoft. Unix is irrelevant. Openness is futile. Prepare
to be assimilated.
Blog
Back to top
View user's profile Send private message
hashashin
n00b
n00b


Joined: 22 Sep 2007
Posts: 37

PostPosted: Sun Mar 06, 2011 1:57 am    Post subject: Reply with quote

He revisado el how-to para ponerlo al día que se había quedado un poco desfasado :oops:
_________________
The world will end in 5 minutes. Please log out.
We are Microsoft. Unix is irrelevant. Openness is futile. Prepare
to be assimilated.
Blog
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Spanish All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum