Xifrar particions
Escrit al 2008-11-02 13:43:34 per cpina
En aquesta entrada s'explicarà com xifrar els sistemes de fitxers. Un cop fet cal introduir una contrasenya quan es munta el sistema de fitxers. Quan ja està muntat el sistema de fitxers es fan les operacions de xifrar i de-xifrar al vol i queda totalment transparent a l'usuari (no notem que està xifrat). A les proves que vaig fer, el rendiment de lectura/escriptura és molt semblant.
El motiu de xifrar alguns sistemes de fitxers és evitar que, si perdem o ens roben el portàtil, no es pugui accedir tant fàcilment als nostres fitxers. Una bona manera de fer proves és xifrant algun disc USB.
No he fet proves xifrant la partició / (sí, la HOME). Xifrar la partició / és més problemàtic, no ho he provat i no és tant necessari: podem evitar que hi hagi dades personals i que només hi hagi fitxers del sistema.
Hi ha altres maneres de xifrar les particions, aquí mostraré els passos utilitzant crypsetup i luks (Linux Unified Key Setup).
Les proves són amb les comandes més bàsiques. Fa mesos que faig servir aquest sistema, i és molt fàcil d'accedir a les dades des de diferents ordinadors Linux, diferents distribucions, etc.
Instruccions
Primer preparem la partició pel format luks. Aquí s'ens demanarà la contrasenya:
cryptsetup --verbose --verify-passphrase luksFormat /dev/sdX1
(fent això és perderà tot el què hi hagi a sdX1!) Obrim la partició i la deixem desencriptada com si fos un "Device Mapper":
cryptsetup luksOpen /dev/sdX1 xifrat
A partir d'ara, tenim a /dev/mapper/xifrat un dispositiu que hem d'accedir per fer servir la partició ja desencriptada.
Per tant, la podem formatejar:
mkfs -t xfs /dev/mapper/xifrat
I muntar de forma normal:
mkdir /mnt/xifrat mount /dev/mapper/xifrat /mnt/xifrat/
A partir d'aquí tenim el sistema de fitxers a /mnt/xifrat Si volem desmontar, hem de desmontar el sistema de fitxers:
umount /mnt/xifrat
I després tancar el luks:
cryptsetup luksClose /dev/sdX1
Podem demanar informació:
cryptsetup status xifrat
A l'arranc
Si volem que una partició xifrada es monti a l'arranc (demanant la contrasenya, clar) hem d'escriure a /etc/crypttab:
home /dev/sda6 none luks
Això ens demanarà la contrasenya per /dev/sda6 i ho deixarà a /dev/mapper/home. Al /etc/fstab cal tenir-hi:
/dev/mapper/home /home xfs defaults 0 2
Script per montar un disc extraible
Aquest apartat és totalment opcional. A més, no és exclusiu per particions xifrades.
No volia haver de remanar crypttab o fstab per alguns discs USB, així que vaig fer algun script com ara:
#!/bin/bash
cryptsetup luksOpen /dev/disk/by-uuid/ef5eeaaf-39df-45bf-9492-XXXXXXX disc_gros
mount /dev/mapper/disc_gros
Per saber el uuid (identificador "únic") podem endollar el disc USB i llavors fer:
ls -la /dev/disk/by-uuid/
I ens fixem quin fitxer UUID enllaça cap a la partició que volem. Així no hem d'estar pendents de si ara el disc és sdb1 o sdc1 (en funció de què l'ordre que es connecta).
L'script per desmontar:
#!/bin/bash
umount /mnt/disc_gros
cryptsetup luksClose /dev/mapper/disc_gros
Categories: Articles, Trucs
Comentaris
- Sense comentaris