Come posso installare Ubuntu crittografato con LUKS con doppio avvio?


73

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 a un'altra partizione dal disco live?


Guardando lo script cryptroot, quella modifica rifiutata è effettivamente corretta. Ogni riga in conf.d / cryptroot è trattata allo stesso modo di un altro argomento di crittografia. È possibile utilizzare il programma di installazione senza che la partizione decifrata sia un gruppo di volumi? Ho provato e sembra che non mi permetterà di usarlo senza partizioni. Nel mio caso si tratta di un SSD con 3 partizioni: Linux / boot, Linux /, Windows, con swap e / home sul disco fisso, quindi non c'è davvero bisogno di LVM. Immagino che dovrei rimanere con la mia idea originale, che era quella di usare debootstrap dal CD live.

Guida utile: " Come configurare un'installazione Ubuntu crittografata? ", Di Gayan su HecticGeek.com - hecticgeek.com/2012/10/…
Gabriel Staples

Risposte:


88

Prima di tutto, se vuoi installare Ubuntu crittografato su un disco rigido, sostituendo eventuali partizioni e sistemi operativi esistenti, puoi farlo direttamente dal programma di installazione grafico. Questo processo manuale è richiesto solo per l'avvio doppio.

Questa risposta è stata testata con Ubuntu 13.04.

  1. Avvia da un DVD o una chiavetta USB Ubuntu live 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, questo è /dev/sda3. La seconda partizione dovrebbe essere grande diverse centinaia di megabyte e formattata in ext2 o ext3, non sarà crittografata e montata su /boot(nel mio esempio questo è /dev/sda4).

    In questa schermata, ho un'installazione Ubuntu non crittografata esistente in due partizioni: /dev/sda1e /dev/sda5, evidenziare nel cerchio a sinistra. Ho creato una partizione non formattata /dev/sda3e una partizione ext3 in /dev/sda4, intesa per l'installazione di Ubuntu crittografata, illuminata nel cerchio a destra:

    Screenshot di GParted

  3. Creare un contenitore LUKS utilizzando questi comandi. Sostituisci /dev/sda3con la partizione non formattata creata in precedenza e cryptcherriescon un nome a tua scelta.

    sudo cryptsetup luksFormat /dev/sda3
    sudo cryptsetup luksOpen /dev/sda3 cryptcherries
    
  4. Avviso : noterai che il luksFormatpassaggio è stato completato molto rapidamente, perché non cancella in modo sicuro il dispositivo a blocchi sottostante. A meno che tu non stia solo sperimentando e non ti interessi della sicurezza contro vari tipi di attacchi forensi, è fondamentale inizializzare correttamente il nuovo contenitore LUKS prima di creare i filesystem al suo interno. La scrittura di zeri nel contenitore mappato provocherà la scrittura di dati casuali forti sul dispositivo a blocchi sottostante. Questo può richiedere del tempo, quindi è meglio usare il pvcomando per monitorare l'avanzamento:

    ### Only for older releases, e.g. not for 19.04, `pv` is not included in the repo must be added first
    # 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 eseguendo un'installazione offline e non riesci a ottenere facilmente 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 su /e il secondo verrà utilizzato come scambio. vgcherriesè il nome del gruppo di volumi e lvcherriesroote lvcherriesswapsono i nomi dei volumi logici, è possibile scegliere il proprio.

    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 passo 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 si trova sul desktop in Xubuntu 18.04), scegliendo il partizionamento manuale. Assegnare /a /dev/mapper/vgcherries-lvcherriesroote /bootalla partizione non crittografata creata nel passaggio 2 (in questo esempio /dev/sda4).

  8. Al termine dell'installazione grafica, selezionare "continua il test" e aprire un terminale.

  9. Trova l'UUID delle partizioni LUKS ( /dev/sda3in questo caso), ti servirà 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 /mnte chroot in esso:

    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/crypttabnell'ambiente chrooted per contenere questa riga, sostituendo il valore UUID con l'UUID della partizione LUKS e vgcherriescon il nome del gruppo di volumi:

    # <target name> <source device> <key file> <options>
    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 Ubuntu crittografato. Dovresti ricevere una password.

  14. Verifica di utilizzare la partizione crittografata /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 le partizioni di swap non crittografate di 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, che non desideri scoprire in seguito in caso di emergenza che la modalità di ripristino non funziona :)

  17. Installa eventuali aggiornamenti che potrebbero ricostruire il ramdisk e aggiornare la configurazione di grub. Riavviare e testare sia la modalità normale che la modalità di ripristino.


3
Posso verificare che nel 15.04 è possibile omettere i passaggi 11, 13 e 14 e che in effetti potrebbe essere necessario omettere questi passaggi (poiché l'esecuzione di update-grub in questo modo ha causato la perdita della mia partizione di Windows)
process91

4
@ process91 Sembra che i passaggi abbiano cambiato i numeri. Ora devi inserire 12, 14 e 15.
Aleksandr Dubinsky

5
Ottima guida. Ha funzionato per la prima volta per Windows 10 con BitLocker e Ubuntu 16.04 omettendo qui i passaggi 12, 14 e 15. Ci sono stati un paio di altri ostacoli che ho notato che potrebbero fare con chiarimenti, in particolare ciò che selezioni per la partizione bootloader (viene installato su una partizione EFI esistente, ma probabilmente puoi semplicemente selezionare il disco su cui stai installando Ubuntu, ad es. / dev / sda). Chiunque abbia i permessi di redattore completi, è invitato a copiare e incollare dalla mia scrittura: stevenmaude.co.uk/posts/…
Steven Maude,

5
@unhammer ha appena modificato la risposta ed eliminato un paio di passaggi, per coloro che leggono i commenti e si confondono.
Flimm,

3
L'autore ha già tolto i vecchi passi 12,14,15. Quindi NON saltare alcun passaggio. Funziona con Ubuntu Mate 16.04.1.
user4955663

9

È possibile creare una configurazione crittografata a doppio avvio usando solo gli strumenti della GUI di Ubuntu LiveCD.

Prerequisiti

  • Una chiavetta USB con il programma di installazione Ubuntu 19.04.
  • Se si dispone di una scheda madre EFI, assicurarsi che il disco stia utilizzando la tabella delle partizioni GUID (GPT). L'uso di un disco MBR con questo metodo sembra non riuscire. Puoi convertire un MBR in GPT con gli strumenti Linux ( gdisk), ma prima dovresti fare un backup. Se si converte la tabella delle partizioni, sarà necessario correggere successivamente il caricatore di avvio di Windows .

finestre

  • Nella barra di avvio digitare disk partitione selezionare la prima opzione (apertura del gestore partizioni del disco dalle impostazioni).

  • Riduci la partizione primaria alla dimensione Ubuntu desiderata (ho appena usato l'impostazione predefinita, dividendo la mia unità da 500 GB in un sistema operativo Windows da 240 GB e spazio non allocato da 240 GB).

BIOS

  • Disabilita l'avvio sicuro (se hai BitLocker dovrai riavviarlo per avviare in modo sicuro Windows ogni volta) - per me va bene poiché Ubu è il mio sistema operativo principale, usa solo windoze per i giochi.

Ubuntu LiveCD

Infine, avvia l'USB Installer 19.04

  • Premi sull'opzione di installazioneEnter predefinita di Ubuntu .

  • Quando arrivi alla schermata che dice Cancella intero disco e ha alcune caselle di controllo, fai clic sull'opzione Qualcos'altro (partizionamento manuale). Altrimenti perderai i tuoi dati di Windows!

Una volta che il gestore delle partizioni del disco carica il disco, avrai un ampio spazio non allocato. Fare clic su di esso e premere il pulsante Aggiungi per creare partizioni.

  • Innanzitutto, crea una /bootpartizione da 500 MB (primaria, ext4).
  • In secondo luogo, con il resto dello spazio crea un volume crittografato. Questo creerà una singola partizione LV. Modificalo in modo che sia la /partizione root selezionata .
  • Quindi il resto del processo di installazione funzionerà come al solito.

Quando si avvia per la prima volta, accedere, aprire un terminale, eseguire sudo apt-get updatee sudo apt dist-upgrade, riavviare e accedere nuovamente.

Un file di scambio da 2 GB verrà creato automaticamente. Se invece ne vuoi uno da 8 GB, leggi questa risposta .


4
A maggio 2019 questa è la risposta preferita (sembra funzionare dal 2012, in realtà), senza complicazioni da riga di comando. Nel partizionamento, dopo aver creato il volume fisico per la crittografia non ho visto il nuovo /dev/mapper/sdaX_crypt in cima all'elenco . Questa guida ha schermate e visualizza la formattazione della partizione, può essere utile: hecticgeek.com/2012/10/…
firepol

Buona risposta, @Falieson! Ma non l'ho capito per i primi 14 giorni e le 17 ore di ricerca l'ho guardato, quindi penso che scriverò la mia risposta con schermate. Quell'articolo pubblicato da @firepol ( hecticgeek.com/2012/10/… ) è stato di grande aiuto, e solo DOPO aver seguito quell'articolo la tua risposta ha avuto senso per me.
Gabriel Staples il

Inoltre, vorrei aggiungere la prossima volta che dovresti uscire utilizzando Windows Bitlocker e passare a VeraCrypt. È gratuito e open source, senza costi, e sembra funzionare alla grande con il dual boot. La mia partizione di Windows lo sta utilizzando, così come i miei dischi rigidi esterni e alcuni volumi basati su file locali ora. Ecco un ottimo video introduttivo su VeraCrypt: youtube.com/watch?v=C25VWAGl7Tw , e la loro pagina di download: veracrypt.fr/en/Downloads.html . Per la crittografia LUKS basata su Linux su unità esterne ext4, tuttavia, sto usando l' utility Ubuntu Disks inclusa , che ha una casella di controllo di crittografia LUKS durante la formattazione.
Gabriel Staples il

5

Innanzitutto, indica perché solo la crittografia della partizione Linux potrebbe non essere abbastanza sicura per te:

  1. https://superuser.com/questions/1013944/encrypted-boot-in-a-luks-lvm-ubuntu-installation
  2. https://security.stackexchange.com/questions/166075/encrypting-the-boot-partition-in-a-linux-system-can-protect-from-an-evil-maid-a
  3. https://www.reddit.com/r/linux/comments/6e5qlz/benefits_of_encrypting_the_boot_partition/
  4. https://unix.stackexchange.com/questions/422860/why-should-we-encrypt-the-system-partition-and-not-only-home
  5. https://www.coolgeeks101.com/howto/infrastructure/full-disk-encryption-ubuntu-usb-detached-luks-header/
  6. https://superuser.com/questions/1324389/how-to-avoid-encrypted-boot-partition-password-prompt-in-lvm-arch-linux

Adesso ho seguito questo tutorial:

  1. https://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive
  2. http://web.archive.org/web/20160402040105/http://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive

Su questa risposta, sto presentando un'installazione passo passo (con immagini) di Linux Mint 19.1 XFCEe Ubuntu 18.04.2, entrambi completamente crittografati in un singolo disco. In primo luogo ho installato Ubuntu 14.04.2su /dev/sda5e non ho creato io le partizioni di swap, perché Linux Mint 19.1e Ubuntu 18.04.2non li usano, per esempio, usano file di swap.

Ubuntu 18.04.2 Bionic Beaver

Innanzitutto, inserire il Ubuntusupporto di installazione e riavviare la macchina nella Ubuntusessione live, quindi selezionare Try Ubuntue aprire un terminale, quindi

  1. sudo su -
  2. fdisk /dev/sda, quindi, creare le seguenti partizioni
    • inserisci qui la descrizione dell'immagine
  3. cryptsetup luksFormat /dev/sda5
  4. cryptsetup luksOpen /dev/sda5 sda5_crypt
  5. pvcreate /dev/mapper/sda5_crypt
  6. vgcreate vgubuntu /dev/mapper/sda5_crypt
  7. lvcreate -L10G -n ubuntu_root vgubuntu
    • lvcreate -l 100%FREE -n ubuntu_root vgubuntu(facoltativo, anziché in esecuzione lvcreate -L10G -n ubuntu_root vgubuntu, puoi eseguirlo lvcreate -l 100%FREE -n ubuntu_root vgubuntuper utilizzare tutto lo spazio libero su disco, anziché solo 10 GB)
    • inserisci qui la descrizione dell'immagine
  8. Non chiudere il terminale e aprire il programma di installazione della distribuzione, selezionare Qualcos'altro e installarlo con
    • /dev/sda1montato come /bootpartizione con ext2formato
    • /dev/mapper/vgubuntu-ubuntu_rootmontato come /con il ext4formato.
    • /dev/sda come installazione del boot loader
    • Non contrassegnare nient'altro
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  9. Non riavviare, fare clic su Continua con Linux e selezionare il terminale aperto
  10. mkdir /mnt/newroot
  11. mount /dev/mapper/vgubuntu-ubuntu_root /mnt/newroot
  12. mount -o bind /proc /mnt/newroot/proc
  13. mount -o bind /dev /mnt/newroot/dev
  14. mount -o bind /dev/pts /mnt/newroot/dev/pts
  15. mount -o bind /sys /mnt/newroot/sys
  16. cd /mnt/newroot
  17. chroot /mnt/newroot
  18. mount /dev/sda1 /boot
  19. blkid /dev/sda5 (copia l'UUID senza virgolette e usalo nel passaggio successivo)
  20. echo sda5_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  21. Crea il file /etc/grub.d/40_custom
    • inserisci qui la descrizione dell'immagine
  22. Modifica /etc/default/grube imposta
    • GRUB_TIMEOUT_STYLE=menu
    • GRUB_TIMEOUT=10
    • inserisci qui la descrizione dell'immagine
  23. update-initramfs -u
  24. update-grub
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  25. exit
  26. reboot
  27. Dopo aver riavviato il computer, selezionare l'opzione Ubuntue verrà richiesta correttamente la password di crittografia
    • inserisci qui la descrizione dell'immagine
  28. Dopo aver effettuato l'accesso, esegui
    • sudo apt-get update
    • sudo apt-get install gparted
  29. E aprendolo gpartedtroverai questo
    • inserisci qui la descrizione dell'immagine

Per istruzioni più dettagliate, leggi il tutorial originale sottolineato nella parte superiore di questa domanda o cerca su Google l'uso di questi comandi.


Linux Mint 19.1 Cannella

Per le rimanenti installazioni Linux, rebootil Ubuntucomputer, avviare con il programma di Mint 19.1installazione (Live CD) e aprire una finestra del terminale

  1. sudo su -
  2. cryptsetup luksFormat /dev/sda6
  3. cryptsetup luksOpen /dev/sda6 sda6_crypt
  4. pvcreate /dev/mapper/sda6_crypt
  5. vgcreate vgmint /dev/mapper/sda6_crypt
  6. lvcreate -L10G -n mint_root vgmint
    • lvcreate -l 100%FREE -n mint_root vgmint(facoltativo, anziché in esecuzione lvcreate -L10G -n mint_root vgmint, puoi eseguirlo lvcreate -l 100%FREE -n mint_root vgmintper utilizzare tutto lo spazio libero su disco, anziché solo 10 GB)
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  7. Non chiudere il terminale e aprire il programma di installazione della distribuzione, selezionare Qualcos'altro e installarlo con
    • /dev/sda2montato come /bootpartizione con ext2formato
    • /dev/mapper/vgmint-mint_rootmontato come /con il ext4formato.
    • /dev/sda2come installazione del boot loader (non selezionare /dev/sdacome prima)
    • Non contrassegnare nient'altro
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  8. Non riavviare, fare clic su Continua con Linux e selezionare il terminale aperto
  9. mkdir /mnt/newroot
  10. mount /dev/mapper/vgmint-mint_root /mnt/newroot
  11. mount -o bind /proc /mnt/newroot/proc
  12. mount -o bind /dev /mnt/newroot/dev
  13. mount -o bind /dev/pts /mnt/newroot/dev/pts
  14. mount -o bind /sys /mnt/newroot/sys
  15. cd /mnt/newroot
  16. chroot /mnt/newroot
  17. mount /dev/sda2 /boot
  18. blkid /dev/sda6 (copia l'UUID senza virgolette e usalo nel passaggio successivo)
  19. echo sda6_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  20. update-initramfs -u
  21. update-grub
    • inserisci qui la descrizione dell'immagine
    • inserisci qui la descrizione dell'immagine
  22. exit
  23. reboot
  24. Dopo aver riavviato il computer, selezionare l'opzione Linux Mint on /dev/sda2
    • inserisci qui la descrizione dell'immagine
  25. Quindi, si avvierà correttamente Mint 19.1e verrà richiesta la password di crittografia
    • inserisci qui la descrizione dell'immagine
  26. Dopo aver effettuato l'accesso, esegui
    • sudo apt-get update
    • sudo apt-get install gparted
  27. E aprendolo gpartedtroverai questo
    • inserisci qui la descrizione dell'immagine

Link correlati:

  1. Come posso ridimensionare una partizione LVM attiva?
  2. Come posso ridimensionare una partizione LVM? (es .: volume fisico)
  3. https://www.tecmint.com/extend-and-reduce-lvms-in-linux/
  4. Il chainloader di Grub non funziona con Windows 8
  5. Avvio UEFI con crittografia / avvio su Ubuntu 14.04 LTS

1
Ho 1 disco rigido sul mio computer e aveva un Kubuntu 18.04 non crittografato esistente. Ho installato il secondo Kubuntu 18.04 crittografato vicino al primo Kubuntu non crittografato basato su questo. Ora entrambi funzionano bene su un disco rigido. Grazie per la risposta dettagliata.
Ikrom,

1
La parte su Linux Mint dovrebbe essere rimossa da questa risposta. Questa parte è off-topic, non è stata richiesta dall'OP, rende la risposta inutile a lungo e porta a domande di follow-up off-topic come questa .
mook765,

-1 per la parte relativa alla menta.
user68186
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.