mola bastante, si te lo curras con imagenes se podría poner en portada :)
Encriptar el disco duro de tu portátil
Quizás sea demasiado paranoico, pero me gusta preocuparme por la seguridad de mis datos, sobre todo en las cosas que son fácilmente accesibles, como lo es todo lo que tiene que ver con las tecnologías de la información, y ahora que todo está en la red, que llevas tu portátil a todos lados y que en el guardas desde fotos (de gran valor sentimental) a documentos confidenciales, así como configuraciones de correo, y demás servicios de internet, los cuales quedan totalmente expuestos en el caso de que cualquier persona acceda a tu ordenador, con cualquier live cd te pueden robar toda tu información y en el peor de los casos (robo de portátil) tus datos quedan completamente a disposición del que se haga con tu ordenador.
La solución que yo propongo es la encriptación de las particiones /tmp, /home y swap de tu instalación Linux, por supuesto windows, y mac tienen también dichas opciones, sino me equivoco en Mac se llama FileVault y en Windows BitLocker, yo como usuario de Linux propongo utilizar LUKS que está soportada por el kernel.
Yo me basé en una publicación de Lars Strand en la cual explica el proceso para Ubuntu 9.04, yo lo voy a actualizar para Ubuntu 9.10 (es prácticamente idéntico) y voy a comentar mi experiencia en cada paso.
Lo primero es instalar los paquetes necesarios para llevar a cabo todas las acciones:
# sudo apt-get install lvm2 cryptsetup cryptmount libpam-mount
El “device-mapper” debería aparecer como activo:
pexi@xxxxx:~$ ls -l /dev/mapper/
total 0
crw-rw---- 1 root root 10, 59 2010-02-28 19:54 control
el soporte criptográfico debería estar activo:
# dmsetup targets | grep crypt
crypt v1.7.0
Si cumplimos con los prerrequisitos ya estamos listos para comenzar. Antes de nada comentar que la duración del proceso es directamente proporcional al tamaño de las particiones que se quieran encriptar.
Encriptando la “swap”:
Lo primero que hay que hacer es deshabilitar la partición de swap que se va a encriptar (en caso de que sea la misma).
# swapoff /dev/sda6 (si se usa lvm para swap, en vez de la partición se hace referencia al mapper del lv)
Ahora hay que rellenar dicha partición con datos aleatorios, para esto usamos la instrucción “dd”:
# dd if=/dev/urandom of=/dev/sda6 bs=1M
Este proceso tardó aproximadamente unos 20 minutos en mi portátil a una media de 3.6 Mbytes/seg para una partición de 4 Gbytes.
Una vez terminado el proceso hay que añadir la linea referente a la swap en el fichero de configuración “/etc/crypttab”, de forma que quede de la siguiente manera:
# cat /etc/crypttab | grep swap
cryptoswap /dev/sda6 /dev/urandom cipher=aes-cbc-essiv:sha256,size=256,hash=sha256,swap
De esta forma le estamos diciendo que cada vez que arranque encripte la partición swap con una semilla diferente.
Por último habría que modificar el fichero “/etc/fstab” para que hiciera referencia a la nueva partición/mapper destinado a swap.
cat /etc/fstab | grep swap
# swap was on /dev/sda6 during installation
/dev/mapper/cryptoswap swap swap sw 0 0
Si reiniciamos ahora el ordenador podemos comprobar como durante el proceso crea el sistema de ficheros encriptado para la swap, y cuando estamos dentro podemos ver el estado de la swap desde el fichero “/proc/swaps”, así como el estado del mapper cryptoswap (creado anteriormente) con la ayuda de la aplicación cryptsetup
# cat /proc/swaps
Filename Type Size Used Priority
/dev/mapper/cryptoswap partition 4192924 0 -1
# cryptsetup status cryptoswap
/dev/mapper/cryptoswap is active:
cipher: aes-cbc-essiv:sha256
keysize: 256 bits
device: /dev/sda6
offset: 0 sectors
size: 8385867 sectors
mode: read/write
Ahora le toca al directorio temporal /tmp:
Lo primero que hay que hacer es crear una partición parar el directorio temporal, yo he configurado mi portátil con lvm por lo que lo único que he hecho es crear un nuevo lvol en el espacio que tenía disponible, pero las instrucciones siguientes funcionan también bajo particiones normales.
Al igual que con la swap lo primero que hay que hacer es rellenar la partición bytes aleatorios:
En mi caso utilizo un lvol de 500 Mbytes:
--- Logical volume ---
LV Name /dev/vg_storage/lv_tmp
VG Name vg_storage
LV UUID H9xGKW-M2qC-5Owq-hpdP-BVlk-sADg-qVux1j
LV Write Access read/write
LV Status available
# open 1
LV Size 500,00 MB
Current LE 125
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:0
# dd if=/dev/urandom of=/dev/vg_storage/lv_tmp
Mi partición es de 500 Mbytes y tardó 5 minutos en rellenarla.
Lo siguiente es rellenar el fichero de configuración con los datos de la nueva partición para /tmp
# cat /etc/crypttab | grep tmp
cryptotmp /dev/vg_storage/lv_tmp /dev/urandom cipher=aes-cbc-essiv:sha256,size=256,hash=sha256,tmp
La partición se creará cada vez que se arranque el sistema con una semilla de encriptación diferente al igual que la swap, es por ello que usamos el sistema de ficheros ext2.
Editamos el fichero fstab con los datos de la nueva partición para /tmp.
# cat /etc/fstab | grep tmp
/dev/mapper/cryptotmp /tmp ext2 defaults 0 0
Reiniciamos y comprobamos que la nueva partición se ha montado correctamente.
Encriptando la partición /home:
Mi partición es de de 121.90 Gbytes
--- Logical volume ---
LV Name /dev/vg_storage/lv_home
VG Name vg_storage
LV UUID FSE4LL-ot6l-I0hv-UOIP-Jyi2-hlIZ-d9bt33
LV Write Access read/write
LV Status available
# open 1
LV Size 121,90 GB
Current LE 31207
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 252:1
Como hemos hecho anteirormente ahora toca rellenar la partición con datos aleatorios, en mi caso lo dejé por la tarde andando y a la mañana siguiente ya había terminado.
# dd if=/dev/urandom of=/dev/vg_storage/lv_home
Inizializamos la partición y establecemos la clave que servirá como semilla de encriptación:
# cryptsetup -c aes-cbc-essiv:sha256 -y -s 256 luksFormat /dev/vg_storage/lv_home
LA CLAVE INTRODUCIDA SERÁ DEFINITIVA, para que la unidad se monte automáticamente lo ideal es montarla al iniciar sesión y para eso es necesario que el usuario tenga la misma password que la establecida anteirormente.
Ahora mapeamos la unidad
# cryptsetup luksOpen /dev/vg_storage/lv_home cryptohome
Creamos el sistema de ficheros para poder utilizar la partición, recordemos que /tmp y la swap se crean en cada arranque.
# mkfs.ext4 -j -m 1 -O dir_index,filetype,sparse_super /dev/mapper/cryptohome
Ya tenemos la partición lista, para probarlo podemos hacerlo de la siguiente manera:
# cryptsetup luksClose cryptohome
# cryptsetup luksOpen /dev/vg_storage/lv_home cryptohome
Enter LUKS passphrase:
key slot 0 unlocked.
Command successful.
# mkdir -p /mnt/cryptohome
# mount /dev/mapper/cryptohome /mnt/cryptohome
# touch /mnt/cryptohome/testfile
# ls /mnt/cryptohome/
lost+found testfile
Ahora solo falta configurarlo para que se monte automáticamente cada vez que iniciamos sesión:
Antes de nada desmontamos la partición y cerramos el sistema encriptado.
# umount /mnt/cryptohome
# cryptsetup luksClose cryptohome
Lo siguiente a hacer es eliminar del fichero fstab la linea que hace referencia a la partición del /home, de manera que no intente montarla en el arranque.
Añadimos la siguiente linea en el fichero de configuración:
# cat /etc/crypttab | grep home
cryptohome /dev/vg_storage/lv_home noauto luks
Por último hay que configurar pam_mount de manera que monte la partición con la password del usuario.
# cat /etc/security/pam_mount.conf.xml | grep pexi
<volume user="usuario" fstype="crypt" path="particion/lvol" mountpoint="/home"/>
Reiniciamos y ya tenemos nuestro sistema encriptado.
Recordar que la primera vez no existirá la carpeta para nuestro usuario, por lo que entramos desde la terminal, y creamos el directorio para el usuario.
sudo mkdir /home/usuario
Seguidamente le asignamos los permisos para poder usarlo:
sudo chmod usuario:usuario -R /home/usuario
-
- Inicie sesión o regístrese para enviar comentarios
JUEGOS DESTACADOS
Pokémon | Pokémon Escarlata y Purpura | The Legend of Zelda: Tears of the Kingdom | Bayonetta 3 | Monster Hunter Rise | Super Mario 3D World + Bowser's Fury | Xenoblade Chronicles 3 | Kirby | Kirby’s Return to Dream Land Deluxe | Mario Kart 8 Deluxe | The Legend of Zelda | Monster Hunter Stories 2: Wings of Ruin | Uncharted 4: El Desenlace del Ladrón | Yo-Kai Watch | Ratchet & Clank | Resident Evil 4 Remake | Dynasty Warriors 9 | THE KING OF FIGHTERS XV | Monster Hunter: World | Star Wars | Animal Crossing | Nioh | Street Fighter V | Dragon Ball FighterZ | Hitman | Life is Strange: True Colors | Super Smash Bros. Switch | Metal Gear Solid V | DRAGON QUEST XI | Final Fantasy XV | Dark Souls III | Resident Evil Village | Saints Row | The Last of Us Parte I | SOULCALIBUR VI | Marvel's Guardians of the Galaxy | Horizon Forbidden West | Horizon Zero Dawn | Ghost of Tsushima: Director’s Cut | God of War | Pokémon X Y | Pokémon Rubi Omega y Zafiro Alfa | Pokemon: Let's Go Pikachu! y Eevee! | Pokémon Ultrasol y Ultraluna | Pokémon Sol y Luna | Pokémon Diamante Brillante y Perla Reluciente | Leyendas Pokémon: Arceus | Shadow of the Colossus | The Legend of Zelda: Breath of the Wild | God of War Ragnarök