Instalação personalizada criptografada

5

Meu computador roda o Ubuntu. Eu quero instalar o Ubuntu em outro meio. Desejo ativar a criptografia, mas como as opções padrão do instalador do ubuntu (apagar / ao lado / etc ...) dizem respeito apenas à unidade padrão, eu tenho que escolher "outra coisa" e criar as partições na outra unidade manualmente, criei ~ 128mb parte para boot, então eu estou perdido, se eu fizer uma partição criptografada com o resto do espaço que eu não consigo dividi-lo, então eu não tenho nenhuma troca; se em vez disso eu criar duas partições criptografadas, não parece certo, porque ele quer configurar duas senhas diferentes ...

Como posso configurar a troca? (Durante ou após a instalação).

    
por Yvain 23.05.2017 / 10:10

3 respostas

9

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.

  1. 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)
  2. 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!
  3. 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

  1. 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.
  2. 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.

  1. 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"
  2. 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
  3. Agora execute sudo chroot /mnt para acessar o sistema instalado

  4. Do chroot, monte mais algumas coisas
    • mount -t proc proc /proc
    • mount -t sysfs sys /sys
    • mount -t devpts devpts /dev/pts
  5. 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
  6. Por fim, reconstrua alguns arquivos de inicialização.
    • update-initramfs -k all -c
    • update-grub
  7. 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

    
por b_laoshi 23.05.2017 / 10:46
2

Uma forma de fazer a tarefa é usar o link do instalador da rede do ubuntu

Não é um instalador gráfico. Mas oferece a opção explícita de disco após você escolher a instalação completa do disco com criptografia.

    
por ernstkl 05.02.2018 / 21:25
1

Como fazer isso, várias partições criptografadas e não LVM

Como minha resposta anterior foi muito longa, estou postando uma segunda resposta que usa uma abordagem diferente se você não quiser usar o LVM.

Você pode criar várias partições criptografadas e usar o script decrypt_derived para que você só precise digitar a senha uma vez. Confira esta postagem do blog para instruções passo a passo. O autor usa um arquivo-chave, mas o script LUKS decrypt_derived também seria suficiente.

    
por b_laoshi 23.05.2017 / 11:08