Come crittografare le tue partizioni su Linux con dm-crypt

Crittografia Disco Linux Dm Crypt In primo piano

I dischi rigidi e gli SSD sono facili da rimuovere dai laptop o dai computer. In questo caso, tutte le misure di sicurezza implementate dal tuo sistema operativo vengono meno. Se hai dati che desideri proteggere, puoi creare un contenitore crittografato. Qui memorizzerai file sensibili, mentre i file non segreti possono rimanere sulle tue partizioni normali.

È più semplice impostare una partizione crittografata durante l’installazione della tua distribuzione Linux. L’installatore può guidarti attraverso quel processo. Ma se hai perso quell’opportunità, segui i passaggi in questa guida per creare il tuo vault segreto.

Leggi anche: Come crittografare file su Linux usando GPG, Ccrypt, Bcrypt e 7-Zip

Requisiti

Hai bisogno di una partizione vuota per questo processo. Ciò significa una partizione non formattata (senza filesystem).

Se le tue partizioni formattate occupano attualmente tutto lo spazio libero sul tuo dispositivo di archiviazione, dovrai utilizzare GParted per ridurre una di esse.

Attenzione: È saggio fare prima un backup dei tuoi dati. Quando riduci una partizione e il suo filesystem, esiste un piccolo rischio coinvolto. Il tuo computer potrebbe bloccarsi o perdere alimentazione durante il processo. Ciò potrebbe lasciare il tuo filesystem in uno stato incoerente che potrebbe essere difficile da recuperare.

Segui i primi passaggi in questa guida per ridimensionare una partizione con GParted. Oppure, se c’è una partizione di cui non hai più bisogno, puoi eliminarla. (Dopo aver liberato dello spazio e visualizzato “non allocato”, salta il resto dei passaggi della guida.) In particolare, non creare una partizione formattata come ext4. Invece, fai clic con il tasto destro sullo spazio non allocato, come mostrato nella guida. Nella finestra di dialogo che si apre, vedrai un campo etichettato “File system”. Normalmente, ext4 dovrebbe essere selezionato come predefinito qui. Fai clic su di esso e cambialo in “svuotato”.

cryptsetup-gparted-new-partition-cleared

Dopo aver selezionato “Aggiungi”, fai clic sulla spunta verde per applicare le modifiche.

Installa cryptsetup

Se hai avviato un sistema operativo live per modificare le tue partizioni con GParted, riavvialo nel tuo sistema Linux principale.

Apri un emulatore di terminale. Su sistemi basati su Debian, come Ubuntu o Linux Mint, inserisci questo comando:

sudo apt update && sudo apt install cryptsetup

cryptsetup-installing-package

Su distribuzioni come Fedora o CentOS e altre che usano pacchetti RPM invece di DEB, cryptsetup potrebbe essere già installato. Se non lo è, puoi installarlo con:

sudo yum install cryptsetup

Su OpenSUSE, se cryptsetup non è preinstallato, puoi installarlo con:

sudo zypper refresh && sudo zypper install cryptsetup

E su distribuzioni basate su Arch, useresti questo comando:

sudo pacman -S cryptsetup

Trova il Nome del Dispositivo Bloccato della Tua Partizione

Inserisci il seguente comando:

lsblk

cryptsetup-lsblk

Nell’esempio offerto nell’immagine, il dispositivo di archiviazione è “vda”. “vda1” fino a “vda3” sono partizioni.

Per trovare la partizione che hai preparato, ricorda la dimensione che hai riservato per essa. La troverai tra le partizioni senza punti di montaggio. Nel tuo caso potrebbe essere qualcosa come “/dev/sda2” invece di “/dev/vda3”.

La crittografia della partizione sovrascriverà i dati su di essa (se presenti), il che significa che se ottieni il nome del dispositivo sbagliato, potresti finire per distruggere dati utili. Per assicurarti di avere il nome del dispositivo corretto, puoi installare GParted e dare un’occhiata al layout della tua partizione. I nomi dei dispositivi saranno elencati nell’interfaccia grafica. Non usare il nome che hai visto in GParted quando hai avviato dal sistema live (se l’hai fatto). Il layout mostrato nel sistema live sarà diverso dal layout che vedi quando avvii dalla tua distribuzione installata.

C’è un altro modo per assicurarti di non scrivere sul dispositivo bloccato sbagliato. Prova a montarlo. Normalmente, dovrebbe rifiutarsi di farlo poiché non ha un filesystem su di esso.

Importante: ricorda di sostituire sempre “vda3” con il nome del tuo dispositivo:

sudo mount /dev/vda3 /mnt

Nel tuo caso, il comando potrebbe essere sudo mount /dev/sda2 /mnt o altro.

Questo è il messaggio che dovresti ricevere.

cryptsetup-test-mount

Imposta l’intestazione LUKS

Una volta che sei certo di avere il nome del dispositivo corretto, aggiungi un’intestazione LUKS alla partizione.

sudo cryptsetup luksFormat /dev/vda3

Digita “YES” e poi scegli una password forte per la tua partizione crittografata. Digita la stessa password quando ti viene chiesto di verificare la passphrase.

Crea un File System sulla Partizione

Devi mappare questo dispositivo fisico a un dispositivo virtuale. Ciò che viene scritto sul dispositivo virtuale sarà crittografato prima di essere memorizzato sul dispositivo fisico.

sudo cryptsetup luksOpen /dev/vda3 encrypted-partition

La partizione ha bisogno di un filesystem per essere utilizzabile. Crea un filesystem ext4 con questo comando:

sudo mkfs.ext4 /dev/mapper/encrypted-partition

cryptsetup-make-ext4-filesystem

Monta la Partizione Crittografata

Crea la directory in cui monterai il filesystem dalla partizione.

mkdir ~/encrypted-storage

Monta il filesystem:

sudo mount /dev/mapper/encrypted-partition ~/encrypted-storage

Cambia in quella directory:

cd ~/encrypted-storage

In questo momento, solo l’utente root può scrivere qui. Dai al tuo utente il permesso di scrivere in questo filesystem rendendolo il proprietario della directory di livello superiore. Copia e incolla l’intero comando, incluso il “.” alla fine.

sudo chown $USER:$USER .

Limita ad altri utenti la lettura o scrittura in questa directory.

chmod 700 .

A questo punto, la maggior parte dei file manager dovrebbe mostrarti il nuovo dispositivo crittografato nell’interfaccia. Questo mostra come appare nel file manager Thunar, quello predefinito utilizzato nell’ambiente desktop XFCE.

cryptsetup-encrypted-partition-in-thunar

Se il volume non è montato, quando fai clic su di esso ti verrà chiesta la password del volume e la tua password sudo. Il volume verrà montato automaticamente e potrai esplorarlo. Il punto di montaggio sarà diverso da “~/encrypted-storage”. Potrebbe essere qualcosa come “/media/user/f42f3025-755d-4a71-95e0-37eaeb761730/“,

Non è importante; le autorizzazioni che hai impostato in precedenza si applicano ancora. Ciò che è importante è ricordare di fare clic con il tasto destro e smontare quando hai finito di lavorare con il volume. Smontare e chiudere il dispositivo virtuale garantisce che nessuno possa leggere i dati dalla partizione crittografata, nemmeno il tuo sistema operativo.

Se, per qualche motivo, il tuo file manager non supporta questa funzione, puoi montare dal terminale.

sudo cryptsetup luksOpen /dev/vda3 encrypted-partition  
sudo mount /dev/mapper/encrypted-partition ~/encrypted-storage

Ora puoi accedere al volume andando su “/home/nomeutente/encrypted-storage” nel file manager. Quando hai finito, smonta il filesystem e chiudi il dispositivo virtuale:

cd && sudo umount /dev/mapper/encrypted-partition  
sudo cryptsetup luksClose /dev/mapper/encrypted-partition

Conclusione

Hai ora un sicuro per i tuoi file importanti. Sapere che nessuno può vedere cosa memorizzi lì dovrebbe darti un po’ di tranquillità.