Come creare filesystem nascosti in Linux con Shufflecake

Una fotografia di un lucchetto sopra una tastiera di laptop.

Shufflecake è un’utilità di crittografia del filesystem semplice, ma altamente potente, per Linux. A differenza degli schemi di crittografia del disco tradizionali, Shufflecake funziona non solo crittografando i dati all’interno di un filesystem, ma anche nascondendoli dal sistema stesso. Questo articolo ti mostrerà come installare Shufflecake su Ubuntu per creare e mantenere un filesystem nascosto e crittografato in Linux.

Indice dei contenuti

  • Installazione di Shufflecake
  • Creazione del volume fittizio per Shufflecake
  • Inizializzazione del volume Shufflecake nascosto
  • Smontaggio e cambio dei volumi nascosti
  • Cambio della password per i tuoi volumi nascosti

Installazione di Shufflecake

Il primo passo per ottenere Shufflecake è installare le sue dipendenze nel tuo sistema. Per farlo, esegui il seguente comando:

sudo apt install linux-headers-$(uname -r) libdevmapper-dev libgcrypt-dev makegcc

Scarica l’ultima release tarball dalla pagina Codeberg del progetto.

Uno screenshot del download del tarball per Shufflecake sulla pagina Codeberg dello sviluppatore.

Naviga nella directory Download del tuo computer, quindi estrai l’archivio di rilascio utilizzando Tar:

tar xzf ./Downloads/v0.4.4.tar.gz

FYI: scopri come estrarre file Tar su Linux utilizzando strumenti grafici e basati su terminale.

Apri la cartella per il codice sorgente di Shufflecake, quindi esegui il seguente comando per compilare il suo binario sul tuo sistema:

cd ./Downloads/shufflecake-c  
make

Nota: la compilazione di Shufflecake potrebbe richiedere tra 2 e 5 minuti a seconda delle risorse di sistema del tuo computer.

Copia Shufflecake dalla cartella di rilascio al percorso binario del tuo computer:

cp ./shufflecake /usr/bin/

Controlla se la tua macchina può eseguire correttamente Shufflecake dal percorso del tuo sistema:

shufflecake --help

Creazione del volume fittizio per Shufflecake

Per la maggior parte, Shufflecake può funzionare su qualsiasi tipo di dispositivo di archiviazione a blocchi. Questo include dischi fisici così come partizioni logiche. Questo lo rende utile per creare un disco esterno con un filesystem crittografato pur essendo comunque accessibile come un dispositivo normale.

Per creare un volume fittizio, apri l’utilità Dischi di Gnome dal tuo launcher di applicazioni, quindi seleziona il disco che desideri formattare.

Uno screenshot che evidenzia il disco esterno che ospiterà i volumi Shufflecake nascosti.

Clicca sul pulsante a puntini nell’angolo in alto a destra della finestra, quindi seleziona Formatta disco…

Uno screenshot che evidenzia l'opzione

Clicca sulla lista a discesa accanto all’etichetta Elimina:, quindi seleziona Sovrascrivi i dati esistenti con zeri (Lento).

Seleziona Formatta… per avviare il processo di formattazione.

Una volta completato, clicca sull’icona + per creare una nuova partizione sul tuo disco.

Uno screenshot che evidenzia il simbolo

Fornisci una dimensione della partizione che sia un quarto del tuo spazio totale su disco. Questo servirà come spazio non crittografato del tuo disco che puoi accedere senza Shufflecake.

Uno screenshot del cursore della dimensione della partizione per il disco esterno nell'utilità Dischi di Gnome.

Seleziona il blocco di Spazio libero rimanente nell’utilità Dischi, quindi clicca sul + per creare una nuova partizione.

Uno screenshot che evidenzia lo spazio libero rimanente sul disco esterno.

Assegna l’intero spazio libero del disco alla tua partizione fittizia. Questo ti permetterà di creare più volumi nascosti all’interno del tuo disco Shufflecake.

Buono a sapersi: scopri come creare le tue partizioni personalizzate in Linux.

Inizializzazione del volume Shufflecake nascosto

A questo punto, hai ora Shufflecake nella cartella binaria del tuo sistema e una partizione disco fittizia. Per creare il tuo filesystem crittografato, devi inizializzarlo in Shufflecake.

Naviga nella tua cartella di rilascio, quindi carica il modulo del kernel di Shufflecake sul tuo computer:

cd ./Downloads/shufflecake-c  
sudo insmod dm-sflc.ko

Esegui lsblk per trovare il nome del disco su cui desideri installare Shufflecake. Nel mio caso, creerò un volume nascosto all’interno della mia partizione fittizia “/dev/sda2.”

Uno screenshot che mostra la partizione fittizia sda2 in lsblk.

Esegui il seguente comando per inizializzare Shufflecake per la tua partizione fittizia:

sudo shufflecake init /dev/sda2

Nota: Shufflecake funzionerà solo su dischi non di sistema. Eseguire Shufflecake sul tuo disco principale renderà il tuo sistema operativo non avviabile.

Questo avvierà un prompt della procedura guidata in cui Shufflecake ti chiederà i dettagli del tuo volume nascosto. Digita “5”, quindi premi Invio per creare cinque volumi nascosti.

Fornisci la password per ciascuno dei tuoi volumi nascosti, quindi premi Invio. Assicurati di essere in un luogo privato prima di digitarla poiché la procedura guidata di Shufflecake non nasconderà il tuo input.

Uno screenshot che mostra le diverse password segrete per ciascuno dei volumi nascosti inizializzati in Shufflecake.

Nota: il processo di inizializzazione potrebbe richiedere tra 5 e 10 minuti a seconda delle dimensioni della tua partizione.

Creazione di un filesystem per il tuo volume nascosto

Una volta completato, crea il filesystem per i tuoi volumi nascosti. Per farlo, apri il volume nascosto che desideri formattare utilizzando il seguente comando:

sudo shufflecake open /dev/sda2

Facendo ciò, ti verrà chiesta la password del volume che desideri aprire.

Uno screenshot che evidenzia la password segreta per il nascosto

Conferma che Shufflecake ha caricato correttamente il tuo volume nascosto eseguendo lsblk.

Uno screenshot che evidenzia il percorso del dispositivo per il nascosto

Crea il filesystem che desideri installare sul tuo volume nascosto. Ad esempio, eseguire mkfs.fat creerà un filesystem FAT all’interno di “Volume 2”:

sudo mkfs.fat -F32/dev/mapper/sflc_0_2

Nota: i volumi Shufflecake agiscono come dispositivi virtuali all’interno del tuo computer. Pertanto, troverai sempre i suoi volumi nascosti sotto “/dev/mapper/sflc_0_n” invece del normale “/dev.”

Dopo di ciò, Ubuntu dovrebbe montare automaticamente il tuo nuovo volume nascosto nella tua sessione corrente. Per accedervi, clicca sull’icona Drive nella barra laterale sinistra del desktop.

Uno screenshot che evidenzia il nuovo volume nascosto formattato

Verifica se il tuo filesystem funziona correttamente creando un file o una cartella al suo interno.

Smontaggio e cambio dei volumi nascosti

A differenza dei dischi normali, espellere un volume Shufflecake richiede di smontare sia l’unità virtuale che chiudere la sua connessione Shufflecake. Per farlo, fai clic con il tasto destro sull’icona dell’unità sulla barra delle applicazioni di Ubuntu e seleziona Smonta.

Apri una nuova sessione del terminale, quindi esegui il seguente comando per il tuo disco:

sudo shufflecake close /dev/sda2

Puoi anche passare a una sezione diversa del tuo disco Shufflecake rieseguendo sudo shufflecake open /dev/sda2, quindi fornendo la password appropriata per il tuo volume nascosto.

Cambio della password per i tuoi volumi nascosti

Oltre a creare e caricare volumi nascosti, l’utilità Shufflecake ti consente anche di modificare le password dei volumi esistenti. Per farlo, apri una nuova sessione del terminale e poi esegui il seguente comando:

sudo shufflecake changepwd /dev/sda2

Facendo ciò, si avvierà una procedura guidata che ti chiederà la password del volume nascosto che desideri modificare. Fornisci la password, quindi premi Invio.

La procedura guidata ti chiederà quindi una nuova password per il tuo volume nascosto. Scrivi la nuova password, quindi premi Invio per applicare le nuove modifiche.

Infine, controlla se la tua nuova password per il tuo volume funziona correttamente eseguendo il sottocomando testpwd:

sudo shufflecake testpwd /dev/sda2

Creare e mantenere filesystem nascosti in unità esterne è solo il primo passo per esplorare il mondo della sicurezza dei dati e della privacy. Scopri come creare file crittografati nel tuo filesystem con Tomb.

Crediti immagine: FlyD tramite Unsplash, Sviluppatori di Shufflecake e Wikimedia Commons. Tutte le modifiche e gli screenshot di Ramces Red.