Como realizar isso com LVM e uma única partição criptografada
Aviso
Primeiro, 128M é muito pequeno para a inicialização! Eu uso 1G. Caso contrário, o que está prestes a acontecer é que você pode esquecer de remover os kernels antigos e / boot irá encher, e você terá que lidar com a dor de tentar remover kernels antigos do sistema para que você possa fazer com que apt
ou apt-get
funcione novamente. Mesmo com o 1G, certifique-se de remover os kernels antigos de tempos em tempos.
Os próximos passos não são destinados a usuários iniciantes.
Pré-instalação do sistema operacional ao vivo
Você deseja configurar o LUKS e o LVM enquanto particiona manualmente! Eu testei isso no Ubuntu 16.04.2
Inicialize o Ubuntu de um SO Live e selecione a opção de experimentar o Ubuntu sem instalar. Siga os passos que descrevi abaixo. Vamos supor que você esteja instalando em / dev / sdb.
- Particione o disco com sua ferramenta de escolha: usei o fdisk para configurar o meu em uma tabela de partições msdos da seguinte forma:
- outras partições: sistemas operacionais existentes - não nos importamos com esses
- sdb1: / boot (1G)
- sdb2: partição LUKS (o restante do disco)
- Configurar o LUKS
-
sudo cryptsetup luksFormat --hash=sha512 --key-size=512 --cipher=aes-xts-plain64 --verify-passphrase /dev/sdb2
-
sudo cryptsetup luksOpen /dev/sdb2 CryptDisk
- Embora não seja necessário, é uma boa ideia preencher a partição LUKS com zeros para que a partição, em um estado criptografado, seja preenchida com dados aleatórios.
sudo dd if=/dev/zero of=/dev/mapper/CryptDisk bs=4M
CUIDADO, isso pode levar muito tempo!
-
- Configurar o LVM em / dev / mapper / CryptDisk
-
sudo pvcreate /dev/mapper/CryptDisk
-
sudo vgcreate vg0 /dev/mapper/CryptDisk
-
sudo lvcreate -n swap -L 2G vg0
-
sudo lvcreate -n root -L 10G vg0
-
sudo lvcreate -n home -l +100%FREE vg0
-
Instalação do sistema operacional ao vivo
- Agora você está pronto para instalar. Quando você chegar à parte "Tipo de instalação" da instalação, escolha a opção "Outra coisa". Então, atribua manualmente as partições / dev / mapper / vg0- * como você gostaria de ter o configurado. Não se esqueça de definir / dev / sdb1 como / boot. a partição / boot não deve ser criptografada. Se for, não poderemos arrancar. Altere o "Dispositivo para instalação do carregador de boot" para / dev / sdb e continue com a instalação.
- Quando a instalação estiver concluída, não reinicialize ! Escolha a opção para "Continuar o teste".
Configuração pós-instalação do sistema operacional ao vivo
Este bit é realmente importante se você quiser que seu sistema seja inicializado! Passei um bom tempo pesquisando isso para descobrir essas etapas pós-instalação. No meu caso, eu estava realmente fazendo isso porque queria personalizar o tamanho de / boot em / dev / sda, mas todo esse trabalho também deveria ser transferido para sua situação.
- Em um terminal, digite o seguinte e procure o UUID de / dev / sdb2. Tome nota desse UUID para mais tarde.
-
sudo blkid | grep LUKS
- A linha importante na minha máquina lê
/dev/sdb2: UUID="bd3b598d-88fc-476e-92bb-e4363c98f81d" TYPE="crypto_LUKS" PARTUUID="50d86889-02"
-
-
Em seguida, vamos colocar o novo sistema instalado novamente para que possamos fazer mais algumas alterações.
-
sudo mount /dev/vg0/root /mnt
-
sudo mount /dev/vg0/home /mnt/home
# provavelmente não é necessário -
sudo mount /dev/sdb1 /mnt/boot
-
sudo mount --bind /dev /mnt/dev
# Não tenho certeza se isso é necessário -
sudo mount --bind /run/lvm /mnt/run/lvm
-
(Apenas se você estiver usando o EFI):
sudo mount /dev/sd*/your/efi/partition
/ mnt / boot / efi
-
-
Agora execute
sudo chroot /mnt
para acessar o sistema instalado - Do chroot, monte mais algumas coisas
-
mount -t proc proc /proc
-
mount -t sysfs sys /sys
-
mount -t devpts devpts /dev/pts
-
- Configurar a criptografia. Usando o seu editor de texto favorito, crie o arquivo / etc / crypttab e adicione a seguinte linha, mudando o UUID com o UUID do seu disco.
-
CryptDisk UUID=bd3b598d-88fc-476e-92bb-e4363c98f81d none luks,discard
-
- Por fim, reconstrua alguns arquivos de inicialização.
-
update-initramfs -k all -c
-
update-grub
-
- Reinicialize e o sistema deve pedir uma senha para descriptografar na inicialização!
Agradecimentos especiais a Martin Eve , EGIDIO DOCILE , e o pessoal em blog.botux.fr para tutoriais que eles postaram. Puxando pedaços de seus posts e fazendo um pouco de resolução extra de problemas, finalmente consegui descobrir isso.
Eu tentei isso várias vezes e falhei várias vezes. O bit que eu tive que resolver sozinho com base em mensagens de erro foi sudo mount --bind /run/lvm /mnt/run/lvm