Come posso installare Ubuntu crittografato con LUKS con dual-boot?

Il disco di installazione di Ubuntu 13.04 ha un’opzione per installare Ubuntu crittografato usando LUKS. Tuttavia, non esiste alcuna opzione per eseguire un’installazione crittografata lungo le partizioni esistenti per uno scenario a doppio avvio.

Come posso installare Ubuntu crittografato insieme ad un’altra partizione dal disco live?

Prima di tutto, se si desidera installare Ubuntu crittografato su un disco rigido, sostituendo qualsiasi partizione esistente e sistema operativo, è ansible farlo direttamente dal programma di installazione grafico. Questa procedura manuale è richiesta solo per il dual-boot.

Questa risposta è stata testata con Ubuntu 13.04.

  1. Avvia da un DVD live o una chiavetta USB Ubuntu e seleziona “Prova Ubuntu”.

  2. Crea due partizioni usando GParted incluso nel disco live. La prima partizione dovrebbe essere non formattata e dovrebbe essere abbastanza grande per root e swap, nel mio esempio, questa è /dev/sda3 . La seconda partizione dovrebbe essere di diverse centinaia di megabyte di grandi dimensioni e formattata in ext2 o ext3, sarà non cifrata e montata su /boot (nel mio esempio si tratta di /dev/sda4 ).

    In questo screenshot, ho un’installazione Ubuntu non criptata esistente in due partizioni: /dev/sda1 e /dev/sda5 , evidenziate nel cerchio a sinistra. Ho creato una partizione non formattata in /dev/sda3 e una partizione ext3 in /dev/sda4 , progettata per l’installazione di Ubuntu crittografata, evidenziata nel cerchio a destra:

    Screenshot GParted

  3. Creare un contenitore LUKS utilizzando questi comandi. Sostituisci /dev/sda3 con la partizione non formattata creata in precedenza e le cryptcherries con un nome di tua scelta.

     sudo cryptsetup luksFormat /dev/sda3 sudo cryptsetup luksOpen /dev/sda3 cryptcherries 
  4. Avvertenza : si noterà che il passaggio luksFormat completato molto rapidamente, poiché non cancella in modo sicuro il dispositivo a blocchi sottostante. A meno che tu non stia solo sperimentando e non si preoccupi della sicurezza contro vari tipi di attacchi forensi, è fondamentale inizializzare correttamente il nuovo contenitore LUKS prima di creare filesystem in esso. Scrivere degli zeri sul contenitore mappato causerà la scrittura di forti dati casuali sul dispositivo a blocchi sottostante. Questo può richiedere del tempo, quindi è meglio usare il comando pv per monitorare i progressi:

     sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" sudo apt-get update sudo apt-get install -y pv sudo sh -c 'exec pv -tprebB 16m /dev/zero >"$1"' _ /dev/mapper/cryptcherries 

    oppure, se stai facendo un’installazione offline e non puoi facilmente ottenere pv :

     sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M 
  5. All’interno del contenitore LUKS montato, creare un volume fisico LVM, un gruppo di volumi e due volumi logici. Il primo volume logico verrà montato in / , e il secondo sarà usato come swap. vgcherries è il nome del gruppo di volumi e lvcherriesroot e lvcherriesswap sono i nomi dei volumi logici, puoi sceglierne uno tuo.

     sudo pvcreate /dev/mapper/cryptcherries sudo vgcreate vgcherries /dev/mapper/cryptcherries sudo lvcreate -n lvcherriesroot -L 7.5g vgcherries sudo lvcreate -n lvcherriesswap -L 1g vgcherries 
  6. Crea filesystem per i due volumi logici: (Puoi anche fare questo passaggio direttamente dal programma di installazione.)

     sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot sudo mkswap /dev/mapper/vgcherries-lvcherriesswap 
  7. Senza riavviare , installa Ubuntu usando il programma di installazione grafico (il collegamento è sul desktop in Xubuntu 18.04), scegliendo il partizionamento manuale. Assegna / a /dev/mapper/vgcherries-lvcherriesroot e /boot la partizione non crittografata creata nel passaggio 2 (in questo esempio, /dev/sda4 ).

  8. Una volta completato il programma di installazione grafico, seleziona “continua test” e apri un terminale.

  9. Trova l’UUID delle partizioni LUKS ( /dev/sda3 in questo caso), ne avrai bisogno in seguito:

     $ sudo blkid /dev/sda3 /dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS" 
  10. Montare i dispositivi appropriati nelle posizioni appropriate in /mnt e inserire in chroot:

     sudo mount /dev/mapper/vgcherries-lvcherriesroot /mnt sudo mount /dev/sda4 /mnt/boot sudo mount --bind /dev /mnt/dev sudo chroot /mnt > mount -t proc proc /proc > mount -t sysfs sys /sys > mount -t devpts devpts /dev/pts 
  11. Creare un file denominato /etc/crypttab nell’ambiente chroot per contenere questa riga, sostituendo il valore UUID con l’UUID della partizione LUKS e vgcherries con il nome del gruppo di volumi:

     #     cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries 
  12. Esegui il seguente comando nell’ambiente chroot:

     update-initramfs -k all -c 
  13. Riavvia e avvia in Ubuntu crittografato. Dovresti ricevere una password.

  14. Verifica di utilizzare la partizione crittografata per / eseguendo mount :

     $ mount /dev/mapper/vgcherries-lvcherriesroot on / type ext4 (rw,errors=remount-ro) /dev/sda4 on /boot type ext3 (rw) # rest of output cut for brevity 
  15. Verifica di utilizzare la partizione di swap crittografata (non tutte le partizioni di swap non crittografate da altre installazioni) eseguendo questo comando:

     $ swapon -s Filename Type Size Used Priority /dev/mapper/vgcherries-lvcherriesswap partition 630780 0 -1 
  16. Verifica di poter avviare la modalità di ripristino, non vuoi scoprirlo più tardi durante un’emergenza che la modalità di ripristino non funziona 🙂

  17. Installare eventuali aggiornamenti, che sono in grado di ribuild il ramdisk e aggiornare la configurazione di grub. Riavvia e prova sia la modalità normale che la modalità di ripristino.