Ubuntu cifrado 7.04
TU computador seguro como una caja fuerte!!!
¿Has vivido siempre con el miedo de que alguien pueda romper algún día tu sistema y robar tus archivos? Bien, esos días han terminado, porque puedes tener ahora un sistema operativo cifrado entero. Para esto, utilizamos un Ubuntu recientemente instalado 7.04 con el software actualizado, nada mas instalado. Para la guía siguiente se supone trabajar con tu instalación real de Ubuntu 7.04 (ninguna reinstalación necesaria). Espera un momento! si no tienes las particiones configuradas como esta demostrado abajo, esto podría no funcionar para ti.
No me hago responsable de ninguna pérdida de datos en tu disco duro, así que estas advertido: HAZ ESTO BAJO TU PROPIA RESPONSABILIDAD!
Cosas necesitadas:
- Ubuntu LiveCD
- software cryptsetup
Así es como deben aparecer tus particiones:
CÓDIGO/dev/sda1 - > /boot (cerca de 150-200 MB)
/dev/sda2 - > Swap (el doble de tu memoria RAM)
/dev/sda3 - > raíz (/) (deben ser más de 5 GB)
ADVERTENCIA: Tengo un disco SATA, por lo tanto mis particiones se nombran sda. Si tienes un disco IDE, tienes que substituir sda por hda en la guía.
PASO 1 – Bootea desde el LiveCD
Insertar el Ubuntu 7.04 LiveCD reiniciar desde el CD. , abrir un terminal (Aplicaciones - > Accesorios - > terminal) ingresar como ROOT escribiendo:
CÓDIGO
sudo su
Serás permanentemente ROOT de ahora en adelante (así no tendrás que escribir el sudo , hasta que salgas de esta sesión).
PASO 2 - Preparando el sistema y el respaldo de los datos (backup)
Prepararemos el sistema para el proceso del cifrado cargando algunos módulos necesarios en el núcleo. Escribir, o copiar/pegar las líneas siguientes en la ventana terminal:
CÓDIGOmodprobe aes
modprobe dm-crypt
modprobe dm-mod
modprobe sha256
Activar repositorios universe y multiverse. Ir a Sistema - > Administración - > Origenes del software, comprobar “Software libre mantenido por la comunidad(universe)” y “Software restringido por copyright o cuestiones legales (multiverse)”, clic en el botón “cerrar” y cuando pida recargar la información sobre fuentes del software, hacer clic en “recargar”. Esperar hasta que desaparezca la ventana y después escribir dentro del terminal:
CÓDIGO
aptitude install cryptsetup
Hacemos un backup de los datos existentes creando algunas carpetas temporales:
CÓDIGOcd /mnt
mkdir boot root tmp
Montar las particiones existentes a las carpetas creadas recientemente:
CÓDIGOmount /dev/sda1 boot
mount /dev/sda3 root
Y ahora respalda tus datos:
CÓDIGOmkdir tmp/root
cp -axv root/* tmp/root
Este último código hará salir muchas lineas de texto (los archivos que se están copiando), así que esperar hasta que pare. Toma cerca de 6-7 minutos (dependiendo del número de archivos).
PASO 3 – Encriptando los Archivos de Sistema (filesystem).
Bueno, ahora que el backup a terminado, desmonta los discos con:
CÓDIGOumount root
Encriptar los filesystem con el siguiente comando:
CÓDIGOcryptsetup -c aes-cbc-essiv:sha256 -y -s 256 luksFormat /dev/sda3
ADVERTENCIA: ¡Todos los datos serán borrados permanentemente!
Teclea SÍ(yes) cuando te pregunte, e incorporar una contraseña (dos veces). Entonces escribe:
CÓDIGOcryptsetup luksOpen /dev/sda3 root
mkfs.ext3 /dev/mapper/root
mount /dev/mapper/root root
Ahora copiar los datos de la carpeta temporal a la partición cifrada creada recientemente del root:
CÓDIGOcp -axv tmp/root/* root
Esperar hasta que acabe y borrar la carpeta temporal:
CÓDIGOrm -rf tmp/root
PASO 4 - Ajustes finales
Los archivos de sistema ahora estan encriptados, pero no trabajarán hasta hacer algunos ajustes finales. Escribir, o copiar/pegar las líneas siguientes:
CÓDIGOmkdir root/boot
mount /dev/sda1 root/boot
chroot root
En este momento, estás “virtualmente” en tu partición de root, y puedes hacer modificaciones en ella. Comencemos instalando el software del cryptsetup:
CÓDIGOaptitude update
aptitude install cryptsetup
Agregamos los módulos necesarios del núcleo al archivo /etc/initramfs-tools/modules, para que se carguen la proxima vez que booteemos el PC:
CÓDIGOnano etc/initramfs-tools/modules
Y agregar las líneas siguientes al final:
CÓDIGOaes
dm-crypt
dm-mod
sha256
Hacer CTRL+O y después ENTER para grabar el archivo. CTRL+X para cerrar el editor nano.
Debes ajustar el archivo /etc/fstab para montar correctamente la partición encriptada del ROOT:
CÓDIGOnano etc/fstab
Y cambiar la línea que aparece esto (UUID es un ejemplo… el tuyo puede ser diferente):
CÓDIGO# /dev/sda3 UUID=4565t675-6c67-56hg-hg7j-67g5jk00b562 / ext3 defaults,errors=remount-ro 0 1
Para parecer ésto:
CÓDIGO/dev/mapper/root / ext3 defaults,errors=remount-ro 0 1
Básicamente substituyes (# /dev/sda3 UUID=4565t675-6c67-56hg-hg7j-67g5jk00b562) por (/dev/mapper/root).
CTRL+O y después ENTER para guardar. CTRL+X para cerrar.
Ahora debes editar el archivo de /etc/crypttab:
CÓDIGOnano etc/crypttab
Y agregar la línea al final:
CÓDIGOroot /dev/sda3 none luks,retry=1,cipher=aes-cbc-essiv:sha256
CTRL+O y después ENTER. CTRL+X .
Editar el archivo de /boot/grub/menu.lst:
CÓDIGOnano boot/grub/menu.lst
Buscar la línea que parece esto (el UUID es un ejemplo… el tuyo será diferente):
CÓDIGO# kopt=root= UUID=4565t675-6c67-56hg-hg7j-67g5jk00b562 ro
Y cambiarlo por esto:
CÓDIGO# kopt=root=/dev/mapper/root ro
CTRL+O , ENTER y CTRL+X .
Update GRUB con el comando siguiente:
CÓDIGOupdate-grub
Y comprobar el archivo de /boot/grub/menu.lst para ver si las entradas cambiaron:
CÓDIGOtitle Ubuntu, kernel 2.6.20-16-generic
root (hd0,0)
kernel /vmlinuz-2.6.20-16-generic root=/dev/mapper/root ro quiet splash vga=775
initrd /initrd.img-2.6.20-16-generic
quiet
savedefault
Como puedes ver, hay una opción adicional al final en la línea: vga=775. ¡No tienes que agregar esta opción! Solo cerciorarte de que tengas la opción root=/dev/mapper/root. Si es así entonces puedes actualizar initramfs con el comando siguiente:
CÓDIGOupdate-initramfs -u All
ADVERTENCIA: Si ves un mensaje de error sobre “libdevmapper”, no debes hacer caso y continua con la guía.
Salir y reiniciar:
CÓDIGOexit
reboot
Cuando el sistema comience, verás el cargador de Ubuntu boot splash, que desaparecerá después de algunos segundos y todos lo que podrás ver es una línea centelleando en el lado superior izquierdo de tu monitor. Ahora debes escribir la contraseña que configurastes cuando cifraste el filesystem y presiona ENTER. Notarás que (si escribistes la contraseña correctamente), el sistema continúa cargandose. ¡Eso significa que, tu Ubuntu 7.04 ahora esta encriptado completamente!