EncryptedFilesystemUsingLUKS » Cronologia » Versione 9
Simone Piccardi, 21-12-2010 11:15
1 | 8 | Amministratore Truelite | h1. Come creare un filesystem cifrato usando LUKS |
---|---|---|---|
2 | 1 | Amministratore Truelite | |
3 | 8 | Amministratore Truelite | "LUKS":http://luks.endorphin.org/ è un acronimo di "Linux Unified Key Setup" e si propone come lo standard per la crittografia dei dischi in sistemi linux (e non solo), offrendo un formato standard "on-disc", la possibilità di avere più di una coppia chiave-passphrase per l'accesso ed una gestione sicura di tutte le chiavi. |
4 | 1 | Amministratore Truelite | |
5 | Un disco criptato con LUKS, nel caso lo si sia formattato con una filesystem compatibile (es. vfat) è accessibile anche dai sistemi Windows, usando "FreeOTFE":http://www.freeotfe.org/. |
||
6 | 8 | Amministratore Truelite | |
7 | 9 | Simone Piccardi | La macchina utilizzata al momento della scrittura di questa guida è utilizza una distribuzione GNU/Linux Ubuntu 6.06, relase "Dapper Drake" con kernel 2.6.15; è necessaria una versione di @cryptsetup@ compilata con il supporto LUKS, molto probabilmente la versione attualmente presente in Debian Sid/Unstable dovrebbe andare bene, mentre credo che quella di Sarge non abbia il supporto necessario; è comunque possibile verificare la compatibilità lanciando il comando @cryptsetup --help@ e controllando la presenza delle opzioni relative a LUKS. Nel caso in cui il comando non fosse presente, è sufficente installarlo con: |
8 | 1 | Amministratore Truelite | |
9 | <pre> |
||
10 | 9 | Simone Piccardi | apt-get install cryptsetup. |
11 | </pre> |
||
12 | 8 | Amministratore Truelite | |
13 | 9 | Simone Piccardi | A questo punto è possibile iniziare il lavoro di preparazione del dispositivo, in questo caso una chiavetta USB da 128MB, rilevata dal sistema come @/dev/sda@. |
14 | 8 | Amministratore Truelite | |
15 | 1 | Amministratore Truelite | La prima cosa da fare è verificare l'affidabilità del dispositivo ed, al tempo stesso, riempire tutto lo spazio disponibile con dei dati casuali rendendo di fatto molto più difficoltosi degli eventuali tentativi di attacco e compromissione del filesystem cifrato che verrà creato in seguito. |
16 | Prima di iniziare, va tenuto presente il fatto che a seconda della dimensione del disco, questo processo può richiedere molte ore, quindi se dovete lanciarlo su di un disco molto grande, vi conviene farlo prima di andare a dormire. |
||
17 | |||
18 | <pre> |
||
19 | 8 | Amministratore Truelite | badblocks -c 10240 -s -w -t random -v /dev/sda |
20 | 2 | Amministratore Truelite | </pre> |
21 | 8 | Amministratore Truelite | |
22 | 9 | Simone Piccardi | Se siete particolarmente paranoici potete utilizzare @/dev/urandom@ come sorgente di dati casuali e riempirci il disco. La casualità dei dati sarà migliore rispetto a quella del metodo precedente, ma l'operazione farà un uso intensivo della CPU e richiederà molte ore. Il comando da eseguire è: |
23 | |||
24 | 1 | Amministratore Truelite | Il comando da eseguire è: |
25 | <pre> |
||
26 | 8 | Amministratore Truelite | dd if=/dev/urandom of=/dev/sda |
27 | 1 | Amministratore Truelite | </pre> |
28 | 8 | Amministratore Truelite | |
29 | 9 | Simone Piccardi | Successivamente va partizionato il disco. In questo caso l'obiettivo è di creare un'unica partizione che occupi tutto lo spazio disponibile e per farlo ci sono diverse alternative, sia da linea di comando come @fdisk@ o @cfdisk@ che grafiche come @gparted@ e @qtparted@. |
30 | 8 | Amministratore Truelite | |
31 | 9 | Simone Piccardi | Verrà quindi creata una nuova partizione, riconosciuta dal sistema come @/dev/sda1@. |
32 | 1 | Amministratore Truelite | |
33 | 9 | Simone Piccardi | A questo punto è possibile cifrare la partizione con LUKS e poi "agganciarla" al _device-mapper_, in modo che dm-crypt possa presentarla in maniera "trasparente" al sistema. Sottolineo l'importanza della scelta di una passphrase abbastanza lunga e complessa poiché l'utilizzo di una frase corta e/o facilmente indovinabile vanificherebbe l'utilizzo della crittografia. |
34 | |||
35 | 1 | Amministratore Truelite | I comandi da eseguire sono quindi: |
36 | 9 | Simone Piccardi | |
37 | 8 | Amministratore Truelite | <pre> |
38 | 1 | Amministratore Truelite | cryptsetup --verbose --verify-passphrase luksFormat /dev/sda1 |
39 | 4 | Amministratore Truelite | cryptsetup luksOpen /dev/sda1 sda1 |
40 | 1 | Amministratore Truelite | </pre> |
41 | |||
42 | 9 | Simone Piccardi | Se tutto è andato a buon fine, l'esecuzione del comando @ls -l /dev/mapper/@ dovrebbe restituire il seguente output, confermando l'avvenuto "aggancio" della partizione criptata al device mapper: |
43 | |||
44 | 1 | Amministratore Truelite | <pre> |
45 | total 0 |
||
46 | 4 | Amministratore Truelite | crw------- 1 root root 10, 63 Jul 16 01:34 control |
47 | brw-r----- 1 root root 253, 0 Jul 16 01:52 sda1 |
||
48 | </pre> |
||
49 | 1 | Amministratore Truelite | |
50 | Va quindi creato un filesystem sulla partizione criptata: |
||
51 | 9 | Simone Piccardi | |
52 | 5 | Amministratore Truelite | <pre> |
53 | 8 | Amministratore Truelite | mkfs.ext3 -j -m 1 /dev/mapper/sda1 |
54 | 5 | Amministratore Truelite | </pre> |
55 | 1 | Amministratore Truelite | |
56 | 9 | Simone Piccardi | e sarà possibile montarlo con: |
57 | |||
58 | 5 | Amministratore Truelite | <pre> |
59 | 8 | Amministratore Truelite | mount /dev/mapper/sda1 /mnt |
60 | 5 | Amministratore Truelite | </pre> |
61 | 8 | Amministratore Truelite | |
62 | 9 | Simone Piccardi | mentre i comandi per smontare filesystem e partizione criptata sono: |
63 | |||
64 | 8 | Amministratore Truelite | <pre> |
65 | 5 | Amministratore Truelite | umount /mnt |
66 | cryptsetup luksClose /dev/mapper/sda1 |
||
67 | 8 | Amministratore Truelite | </pre> |
68 | 5 | Amministratore Truelite | |
69 | 9 | Simone Piccardi | Le distribuzioni sufficentemente moderne usano ??hal??, ??d-bus?? e ??gnome-volume-manager?? (o l'equivalente per KDE) per la gestione dei volumi disponibili nel sistema: quando viene collegata al sistema la chiavetta USB contenente la partizione crittografata con LUKS, questa viene riconosciuta e compare una finestra che chiede di inserire la passphrase. |
70 | 1 | Amministratore Truelite | Se la passphrase inserita è corretta, la partizione viene montata e sarà possibile utilizzarla normalmente da tutte le applicazioni. |