Montare il disco rigido crittografato LUKS all'avvio


24

Ho Xubuntu 14.04 su un dispositivo SSD (la HOME è stata crittografata correttamente durante l'installazione), inoltre ho un HDD con una partizione crittografata con dati extra che vorrei montare in / mnt / hdd . Per realizzarli ho seguito i seguenti passi:

(In precedenza avevo crittografato il disco con LUKS seguendo questo post http://www.marclewis.com/2011/04/02/luks-encrypted-disks-under-ubuntu-1010/ )

Controlla l'UUID

sudo blkid 
/dev/sda1: UUID="b3024cc1-93d1-439f-80ce-1b1ceeafda1e" TYPE="crypto_LUKS"

Crea un file di chiavi con la passphrase corretta e salvalo nella mia HOME (anch'essa crittografata).

sudo dd if=/dev/urandom of=/home/[USERNAME]/.keyfiles/key_luks bs=1024 count=4
sudo chmod 0400 .keyfiles/key_luks

Aggiungi la chiave

sudo cryptsetup luksAddKey /dev/sda1 /home/zeugor/.keyfiles/key_luks

Nuova voce in / etc / crypttab

hddencrypted UUID=b3024cc1-93d1-439f-80ce-1b1ceeafda1e /home/[USERNAME]/.keyfiles/key_luks luks

Aggiorna il ramdisk iniziale

sudo update-initramfs -u -k all

Quindi, per testarlo, ho usato il seguente comando per avviare cryptdisks:

sudo cryptdisks_start hddencrypted 
 * Starting crypto disk...                                                       
 * hddencrypted (starting)..
 * hddencrypted (started)... 

Per verificare che hddencrypted sia stato mappato:

ls /dev/mapper/
control  hddencrypted

Crea un punto di montaggio

mkdir /mnt/hdd

Nuova voce in / etc / fstab

/dev/mapper/hddencrypted /mnt/hdd ext4 defaults 0 2

Convalida fstab senza riavvio:

sudo mount -a

Montare la partizione crittografata all'avvio

Ora l'ho montato in / mnt / hdd come ho proposto. Ma mi piacerebbe farlo automaticamente dopo il riavvio. Ma prima di poter accedere, visualizzo questo errore:

the disk drive for /mnt/hdd is not ready yet or not permit

Tutto ciò mi fa pensare che / etc / crypttab non possa accedere al file di chiavi che si trova nella mia HOME (altra partizione crittografata). Non conosco l'ordine che il sistema segue per non crittografato e monta le unità. My HOME non deve essere crittografato prima del mio HDD per consentire l'accesso alla lettura del file di chiavi.

Gradirei qualsiasi intuizione sul perché questo accada.

AGGIORNAMENTO: Se trovo il file di chiavi in / boot (non crittografato), anziché in my / home / [USERNAME] (crittografato) / dev / sda1 e aggiorno la voce in / etc / crypttab è montata perfettamente al momento dell'avvio.


Come viene /home/$USERcrittografato? Una crittografia completa del disco come LUKS o basata su ecryptfs?
David Foerster,

Risposte:


9

Un file chiave nella directory / boot può essere letto da qualsiasi altro sistema operativo avviato sul computer in grado di montare il filesystem su quel / boot. Pertanto, la crittografia non è davvero efficace. Questo argomento si applica a tutte le posizioni dei file chiave su file system non crittografati.

Per evitare file chiave su file system non crittografati, è possibile utilizzare una password per la decrittografia. Crea una password complessa per il dispositivo. Quindi, cambia la riga in / etc / crypttab in

hddencrypted UUID=b3024cc1-93d1-439f-80ce-1b1ceeafda1e none luks

e mantenere immodificata la voce in / etc / fstab. Ubuntu 14.04 / 16.04 / 18.04 ti chiede la password all'avvio.


combinando la risposta di @ solt87 e questa risposta completerebbe questa risposta.

6

Funziona se sostituisci "default" in fstab con

rw,suid,dev,exec,auto,user,async,relatime

(Secondo la pagina man mount , è uguale a "default" tranne "user".)


1

Assicurarsi che la partizione hddencrypted sia elencata dopo la partizione home, in entrambi /etc/fstabe /etc/crypttab. Come crypttab (5)afferma la manpage:

L'ordine dei record in crypttab è importante perché gli script init eseguono l'iterazione sequenziale di crypttab facendo le loro cose.

Inoltre potresti provare ad aggiungere l' noearlyopzione a quest'ultima partizione in /etc/crypttab:

hddencrypted UUID=<...> /home/[USERNAME]/.keyfiles/key_luks luks,noearly

In una situazione normale, potresti indicare che la partizione home deve essere montata prima aggiungendola in CRYPTDISKS_MOUNTin /etc/default/cryptdisks, ma poiché è essa stessa crittografata, ho la sensazione che non sarebbe una buona idea.


1
Questo non funzionerà come Ubuntu tenta di decrittografare tutte le partizioni e poi montarle. Pertanto, il file chiave non sarà disponibile.
Christian Wolf,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.