>
Questa e` una guida pratica all’uso di LUKS su Linux.
LUKS e` un acronimo che sta per Linux Unified Key Setup ed e` il formato standard per il disk-encryption, creato nel 2004, si distingue da molti altri formati crittografici per la particolareggiata documentazione e soprattutto per esser stato sottoposto ad auditing, ovvero il processo di controllo del codice sorgente per verificarne l’integrita`, l’efficacia e la robustezza degli algoritmi e l’assenza di backdoor o bug software critici.
Il primo passo per utilizzare LUKS e` installarlo sulla propria distribuzione, o controllare se e` gia` presente.
In questo esempio la partizione /dev/sda1 viene formattata e sovrascritta.
# cryptsetup -y -v luksFormat /dev/sda1 WARNING! ======== This will overwrite data on /dev/sda1 irrevocably. Are you sure? (Type uppercase yes): YES Enter LUKS passphrase: Verify passphrase: Command successful.In questo post useremo i parametri di default che sono:
# cryptsetup -v –cipher aes-xts-plain64 –key-size 256 –hash sha1 –iter-time 1000 –use-urandom –verify-passphrase luksFormat /dev/sda1ed equivalgono al precedente; se si vuole adottare un livello di sicurezza maggiore e personalizzata si puo\` eseguire
#cryptsetup benchmarke scegliere il cypher e l’algoritmo che si preferisce. Si ricorda che il numero relativo alla dimensione della chiave e\` la meta\` di quello usato da LUKS, ovvero 512 bit in questo caso. Il prossimo comando inizializza il volume dopo aver inserito la chiave per il volume. Il terzo argomento e\` il nome che si vuole scegliere per la partizione. La password scelta non puo\` esser in nessun modo recuperata.
#cryptsetup luksOpen /dev/sda1 testvolume Enter passphrase for /dev/sda1:
Ora /dev/sda1 correttemente inizializzato viene mappato su /dev/mapper/testvolume. Per verificare lo stato del volume:
# cryptsetup -v status testvolume /dev/mapper/testvolume is active. type: LUKS1 cipher: aes-cbc-essiv:sha256 keysize: 512 bits device: /dev/sda1 offset: 4096 sectors size: 419426304 sectors mode: read/write Command successful.
# dd if=/dev/zero of=/dev/mapper/testvolumePoi creare un filesystem, in questo caso ext4
# mkfs.ext4 /dev/mapper/testvolume
# mount /dev/mapper/testvolume /mnt/testvolumee per chiudere il volume in maniera sicura:
# umount /mnt/testvolume # cryptsetup luksClose testvolume
# cryptsetup luksAddKey /dev/sda1 Enter any passphrase: Enter new passphrase for key slot: Verify passphrase:e poi rimuovendo quella precedente:
# cryptsetup luksRemoveKey /dev/sda1Oppure in alternativa si puo\` utilizzare
#cryptsetup luksChangekey /dev/sda1Se si volesse rendere completamente inaccessibile il volume basta rimuovere la chiave attraverso il comando:
#cryptsetup luksErase /dev/sda
questa opzione non richiede password ed e` irreversibile.
Francesco Mecca