Instalando Kali Linux 1.0.3 con particiones encriptadas


publicado por Víctor Villarreal en

0 comentarios

Introducción

Hay personas que necesitan que sus datos se guarden de forma segura en la computadora. Alguna razones puden ser:

  • Trabajan con información confidencial propia o ajena.
  • La computadora es un equipo portátil que puede sufrir robo.
  • Es un equipo compartido.

Este artículo muestra cómo instalar Kali Linux (o cualquier distribución de Linux basada en Debian) con una configuración de particiones encriptadas. La principal diferencia de esta configuración contra una instalación estandar es que los datos permanecen cifrados en el disco. Esto deja sin efecto la posibilidad de sacar el disco del equipo y conectarlo en otro para acceder a los datos que están dentro. Ni siquiera booteando con un LiveCD. Esto es porque no se puede montar la partición sin conocer la clave de apertura de los datos. Esta clave es pedida al usuario, al arrancar el sistema. Sin la clave correcta, el sistema no puede terminar de cargar.

Kali Linux es el proyecto mas reciente de Offensive Security y el sucesor de Backtrack Linux. Una distribución de Linux basada en Debian orientada al proceso de Penetration Testing y Seguridad Informática.

Nota: Los datos permanecen cifrados en el disco mientras que no se haya iniciado sesión en el sistema operativo. En ese momento, los datos son accesibles por cualquier usuario con acceso físico al equipo o por cualquier programa utilizado por éste. No dejes el equipo prendido, sin supervisión. Cualquiera puodría usarlo y sacar información sensible.
Nota: Utiliza claves con una complejidad razonable. De nada sirve una sistema de archivos cifrado si la clave que los proteje es débil o facilmente deducible.
Artículo basado en "Installing backtrack on encrypted partition with luks" de NetSecurityStuff, en "Administration: Backtrack 5R1 Full Disk Encryption (install to hard drive)" de edwiget y en "How to install backtrack 5 R3 on a encrypted hdd and get it working with the latest tools" de lo0.ro.

Los pasos serán los suientes:

  1. Bootear el equipo con LiveCD.
  2. Preparar la partición encriptada.
  3. Instalar el sistema.
  4. Ajustar configuracón.
  5. Reiniciar y probar.
  6. [opcional] Configuración de Swap.

1. Bootear el equipo con LiveCD

Esta es la parte más fácil. Sólo basta con ir al sitio kali.org y bajarnos la imágen ISO que mas nos convenga (32/64 bits. KDE/Gnome.). Luego lo quemamos en un DVD y reiniciamos el equipo con este DVD.

Del menú seleccionamos la primera opción: "LiveCD".

2. Preparar la partición encriptada

Una vez dentro de Kali, deberemos ir al menu "Aplicaciones" -> "Herramientas del sistema" -> "Administración" -> "Editor de particiones GParted".

Aquí es donde debemos realizar las tareas necesarias para tener dos partición libres donde poder instalar el nuevo sistema. Nota: Cómo realizar estas tareas, exceden el alcance de este post! Busca en Google como hacerlo.

Una partició será de 200MB de tamaño y con formato ext2. Su función será la de albergar los archivos necesarios para iniciar el sistema base. Esta partición no puede estar encriptada, de otro modo la máquina no funcionaría. En mi caso será la partición /dev/sda1.

La segunda será del tamaño que deseemos, aunque deberá ser suficientemente grande para instalar el sistema y poder guardar info personal o la que vayamos a manejar. Es decir, al menos 10GB. En mi caso será la partición /dev/sda4 de 250GB. Atensión: no darle formato a esta partición, sólo crearla.

Una vez hecho los cambios en el disco, deberemos reinicar el equipo para que el sistema tome la nueva estructura del disco. Iniciemos el equipo con el LiveCD nuevamente.

Abrimos una consola y ejecutamos fdisk -l /dev/sda para corroborar que está todo como debería:

A continuación procederemos a preparar la partición encriptada formateando con LUKS. Para esto, ejecutamos:

cryptsetup luksFormat -c aes-xts-plain64 -s 512 -h sha512 /dev/sda4

Aquí nos pedirá una clave. Esta clave es la tendremos que ingredar cada vez que arranque el sistema para desbloqear el sistema de archivos. A continuación abrimos la partición para poder utilizarla, con el siguiente comando:

cryptsetup luksOpen /dev/sda root

Ingresamos la clave anterior y listo. Podemos verificar que todo va bien mirando en el directorio de mapper:

root@dorita-nbx:~# ls -lh /dev/mapper/
total 0
crw------T 1 root root 10, 236 jul 14 14:17 control
lrwxrwxrwx 1 root root       7 jul 14 14:17 root -> ../dm-0
root@dorita-nbx:~#

Ahora formateamos la partición con nuestro sistema de archivos predilecto. En este caso, yo prefiero ext3.

mkfs.ext3 -j -O extent /dev/mapper/root

Listo! Ahora podemos instalar el sistema.

3. Instalar el sistema

Ya estamos listos para instalar el sistema. Para esto, vamos a "Aplicaciones" -> "Install Kali on HDD".

Seguimos los pasos como una instalación normal. Sólo que al momento de definir el modo de particionado de disco, seleccionamos "Manual".

En esta pantalla definimos la partició /dev/sda1 como ext2 y su punto de montaje será /boot. Luego editamos la partición /dev/mapper/root y definimos su punto de montaje como /. Por último, debemos indicar explícitamente al sistema NO usar ninguna partición como swap. Esto es importante!.

Terminamos de definir las particiones y seguimos instalando el sistema normalmente. Cuando nos pregunte sobre instalar el gestor de arranque en el sector 0 del disco, le decimos que SI. Continuamos hasta que finalice la instalació. Ojo! Aún no reinicies el equipo!

4. Ajustar configuracón

Ok. Ya tenemos instalado el sistema en nuestro equipo, en nuestra nueva partición encriptada. Ahora debemos hacer algunos ajustes antes de reiniciar el equipo. Primero montemos algunas particiones:

mkdir /mnt/root
mount /dev/mapper/root
mount /dev/sda1 /mnt/root/boot
mount -t proc proc /mnt/root/proc
mount -o bind /dev /mnt/root/dev

Ahora hacemos un chroot:

chroot /mnt/root /bin/bash

Ahora escribimos nano /etc/crypttab y editemos el archivo para que nos quede de la siguiente manera:

#                 
root /dev/sda4 none luks

Ahora escribimos nano /etc/fstab y editemos este otro archivo para que nos quede de la siguiente manera:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
#                
/dev/mapper/root /               ext3    errors=remount-ro 0       1
/dev/sda1       /boot            ext2    defaults          0       0

Tratemos de respetar el orden de ambas lineas de texto. Si llegase a haber una linea relacionada con /media/cdrom, dejarla, ya que es para que la lectora de CD-ROM o DVD se monte automáticamente al inicio del sistema. Cualquier otra linea, borrarlam antes de agregar las nuevas.

Ahora, escribimos nano /etc/initramfs-tools/modules y editemos este otro archivo para que nos quede de la siguiente manera:

# List of modules that you want to include in your initramfs.
# They will be loaded at boot time in the order below.
#
# Syntax:  module_name [args ...]
#
# You must run update-initramfs(8) to effect this change.
#
# Examples:
#
# raid1
# sd_mod
sha512
dm-mod
dm-crypt

Ahora actualizamos nuestro initramfs con los cambios anteriores e instalamos grub nuevamente:

update-initramfs -u
grub-install /dev/sda
update-grub

5. Reiniciar y probar

Listo! Ahora cruzamos los dedos y reiniciamos el sistema. Extraemos el LiveCD de moso de iniciar con nuestro nuevo sistema. Una vez pasada la pantalla del grub, debemos ver que nos pide un password para continuar con la carga del sistema. Funciona !

[opcional] Configuración de Swap

Para crear y habilitar un archivo de Swap, sigamos los pasos de este excelente tutorial.

Deja un comentario