Cifrado completo de S.O con Ubuntu 7.04 Feisty, Dm-crypt y luks

1

Visto 8489 veces | Publicado el 27/08/2007 | cifrado dm-crypt luks


En el presente artículo se explicará como instalar y configurar Ubuntu 7.04 para que el sistema esté completamente cifrado mediante el uso de dm-crypt y Luks.

El entorno empleado es el siguiente:

Vmware 5.5.0.
Disco virtual de 8 GB.
S.O: Ubuntu 7.04

Las pruebas también se realizaron en el siguiente entorno:

Paralells Desktop 3 build 4128,
384mb ram, 8gb de disco, y tipo Linux / other 2.6 kernel

Importante: se formateará el disco por lo que se perderá toda la información que contenga, es necesario hacer backup o copia de seguridad a un disco externo o a otro sistema, todo lo que no sea copiado en dicho backup se perderá esto implica todos los datos. El proceso indicado en este artículo podría no funcionar en otros entornos por lo tanto no hay garantía de éxito y su sistema podría quedar inoperativo.

En alguno de los pasos de instalación en memoria el proceso puede parecer que se ha quedado parado, habrá que tener un poco de paciencia y esperar. De la misma manera sucede con alguna de las actualizaciones (update) que tardará en función de nuestro ancho de banda.
Comenzamos la instalación mediante el sistema Live y creamos una configuración inicial siguiendo los siguientes pasos:

PASO 1. COMENZANDO EL PROCESO

Arrancamos el LiveCD y configurar las opciones de idioma y teclado correctamente.

Seleccionamos el idioma con F2. Posteriormente Iniciar o Instalar Ubuntu.

 

Instalacion

 

En este punto comenzará el proceso de instalación de LiveCd, es decir su carga en memoria.

PASO 2. PREPARANDO LA INSTALACIÓN A DISCO

Una vez finalizada la instalación en memoria, ejecutaremos en un terminal el siguiente comando:

#sudo -i

 

Sudo

 

de esta forma obtendremos privilegios de root.
Editamos el fichero /etc/apt/sources.list para descomentar el repositorio universe.
El fichero modificado deberá quedar como se ve en la siguiente imagen:

sources

 

Guardamos los cambios y salimos.

PASO 3. ACTUALIZACIÓN DEL SISTEMA E INSTALACIÓN DE HERRAMIENTAS NECESARIAS

En este paso ejecutaremos el siguiente comando

# aptitude update && aptitude install cryptsetup gparted

Este comando permitirá actualizar el sistema e instalar cryptsetup (para cifrado) y gparted para realizar las particiones.

 

Updating

 

Una vez finalizada la ejecución de dicho comando pasaremos al siguiente paso para comenzar el particionado del disco.

PASO 4 - CREACIÓN DE PARTICIONES

La distribución de particiones será la siguiente, una partición de boot que no irá cifrada que servirá para arrancar el sistema, una partición de swap y una tercera partición con el resto del disco duro para la instalación del sistema cifrado. A veces es interesante crear una partición para montar /home, en este documento este proceso no se realiza.

Para comenzar el proceso de creación de particiones ejecutaremos gparted y particionar el disco de la siguiente forma:

- 100 MB para /boot (sin formato)

- El doble de RAM para la SWAP, en este caso figuran 400 MB de ram luego serán 800 MB (formato linux-swap)

- Partición para /root (sin formato)

PASO 5 - INSTALACIÓN DE MODULOS DE CIFRADO Y LUKS

Primero se cargarán los módulos necesarios mediante el comando:

# for mod in dm_crypt sha256 aes_i586; do modprobe $mod; done

A continuación ejecutaremos el siguiente comando para configurar el cifrado de la partición /root:

# cryptsetup –-verify-passphrase –-verbose –-hash=sha256 –-cipher=aes-cbc-essiv:sha256 -–key-size=128 luksFormat /dev/sda3

Para confirmar este comando teclearemos YES en mayusculas.
En este momento se nos pedira que introduzcamos dos veces la contraseña, esta contraseña será la que utilizaremos para cargar las particiones por lo que no se nos podrá olvidar.

 

cryptsetup

 

A continuación teclearemos el siguiente comando:

# cryptsetup luksOpen /dev/sda3 root

Nos pedirá la contraseña que hemos generado.

PASO 6 - INSTALACIÓN EN EL DISCO DE LA DISTRIBUCIÓN

Formatearemos la partición de root ubicada en /dev/mapper/root
para ello ejecutaremos el siguiente comando:


# mkfs.ext3 /dev/mapper/root

 

Formateando

 

Arrancamos la instalación a disco seleccionando el icono del escritorio Instalar.

- Seleccionamos el IDIOMA.
- Seleccionamos la Región y Zona horaria.
- Seleccionamos el tipo de teclado en este caso Spain / Spain.

Una vez seleccionado el tipo de teclado se presentará la pantalla de Particionado, seleccionaremos Manual.

Se nos presentará una pantalla con el estado actual de las particiones, la configuración que realizaremos será la siguiente:

/dev/mapper/root en / (ext3) y formatear

/dev/sda1 la marcaremos como ext3, activa y formatear y será montada en /boot

/dev/sda3 no montada

Dejar la partición de la swap como swap.

A continuación se nos ofrecerá la opción de migrar documentos y configuraciones, en nuestro caso seleccionaremos que no.

- Crearemos un usuario con sus distintas opciones:

 

Usuario

 

Una vez creado el usuario, para comenzar la instalación se pedirá confirmación en una pantalla como la siguiente:

 

Instalacion

 

IMPORTANTE: Al finalizar el proceso de instalación el sistema nos preguntará si queremos reiniciar el sistema, elegiremos CONTINUAR TRABAJANDO CON EL LIVECD.

 

Instalacion Completada

 

PASO 7: MONTAJE DE PARTICIONES, CHROOT Y ACTUALIZACIÓN.

En un terminal ejecutaremos los siguientes comandos, primero ejecutaremos


#sudo -i

para que los comandos se ejecuten como root.

A continuación la siguiente serie de comandos:

 

# mount /dev/mapper/root /target
# mount /dev/sda1 /target/boot
# for dir in proc dev sys; do mount –-bind /$dir /target/$dir; done
# cd /dev; MAKEDEV generic
# chroot /target
# aptitude update

El resultado de estos comandos puede verse en la siguiente imagen:

 

update

 

Una vez finaliza el proceso de actualización pasamos a actualizar la distribución con el siguiente comando:


# aptitude –y dist-upgrade

 

updateDistro

 

Y a continuación ejecutaremos el siguiente comando:


# aptitude install cryptsetup

 

cryptsetup

 

PASO 8: ESTABLECIENDO EL MONTAJE DE PARTICIONES DEFINITIVO

Modificar el fichero /etc/crypttab, el resultado debe ser el siguiente:

#
swap /dev/sda2 /dev/urandom /swap
root /dev/sda3 none luks

Editar el fichero /etc/fstab.

Comentar la línea donde aparece la palabra swap:
#UUID=9fe467bd-7b40-4921-9c2c-3f0c9ab3a0ce none /dev/mapper/swap sw 0 0

E incluir la siguiente línea:

/dev/mapper/swap none swap sw 0 0

Para agilizar la carga de los módulos crearemos el siguiente alias en el fichero /etc/modprobe.d/aliases

#alias aes aes_i586

 

alias

 

PASO 9: CONFIGURACIÓN DEL GESTOR DE ARRANQUE GRUB

Actualizamos GRUB para que actualice los cambios realizados en los puntos anteriores mediante los siguientes comandos:


#update-grub

 

UpdateGrub

 


#update-initramfs -u

 

UpdateInitramfs

 

Editamos el grub en menu.lst para que el grub al iniciarse muestre por pantalla los posibles mensajes de error, quitando "quiet splash" así en el caso de que falle podremos solventar los problemas que se encuentren.

Una vez iniciado el sistema si no hemos identificado errores podemos volver a restaurar la configuración original de grub incluyendo de nuevo "quiet splash".

PASO 10: FIN DEL PROCESO

Para finalizar el proceso ejecutaremos los siguientes comandos:


#exit
#umount /target/{proc,dev,sys,boot}
#umount /target (falla al desmontar)
#reboot

Enlaces relacionados:

http://luks.endorphin.org/dm-crypt

http://ubuntuforums.org

Agradecimientos:

Pablo Catalina.
Juan de la Fuente Costa.
Hacktimes Staff.


agosto 09 4:42 p.m.
freed0m dijo:

Actualmente esta configuración sería mucho más simple si utilizásemos para ello una de las instalaciones alternate de Ubuntu, http://www.ubuntu.com/GetUbuntu/downloadmirrors#alternate básicamente sería seguir los pasos del instalador e indicar que se quiere cifrar el sistema completo.


Añadir comentario











Búsqueda

Síguenos


El staff de Hacktimes ruega a cualquier persona interesada en la distribución y/o publicación de estos artículos que lo haga sin alterar su contenido y cite a su autor y/o la fuente original. Muchas gracias.

Todos los artículos publicados se encuentran bajo la licencia Creative Commons