Como posso instalar o Ubuntu criptografado com LUKS com inicialização dupla?

73

O disco de instalação do Ubuntu 13.04 tem uma opção para instalar o Ubuntu criptografado usando LUKS. No entanto, não há opção para executar uma instalação criptografada ao longo de partições existentes para um cenário de inicialização dupla.

Como posso instalar o Ubuntu criptografado ao lado de outra partição do disco ativo?

Flimm
fonte
Olhando para o script de criptografia, essa edição rejeitada está realmente correta. Cada linha em conf.d / cryptroot é tratada da mesma forma que outro argumento de cryptopts. É possível usar o instalador sem que a partição descriptografada seja um grupo de volumes? Eu tentei e parece que não vai me deixar usá-lo sem partições. No meu caso, é um SSD com 3 partições: Linux / boot, Linux /, Windows, com swap e / home no HDD, então não há necessidade de LVM. Acho que teria que ficar com minha ideia original, que era usar o debootstrap do CD ao vivo.
Guia útil: " Como configurar uma instalação criptografada do Ubuntu? ", Por Gayan em HecticGeek.com - hecticgeek.com/2012/10/…
Gabriel Staples

Respostas:

88

Primeiro de tudo, se você deseja instalar o Ubuntu criptografado em um disco rígido, substituindo todas as partições e sistemas operacionais existentes, você pode fazer isso diretamente no instalador gráfico. Este processo manual é necessário apenas para a inicialização dupla.

Esta resposta foi testada com o Ubuntu 13.04.

  1. Inicialize a partir de um DVD ao vivo ou pendrive do Ubuntu e selecione "Experimentar o Ubuntu".

  2. Crie duas partições usando GParted incluído no disco ativo. A primeira partição deve ser não formatada e deve ser grande o suficiente para root e swap, no meu exemplo, é isso /dev/sda3. A segunda partição deve ter várias centenas de megabytes de tamanho e formatada em ext2 ou ext3; será descriptografada e montada em /boot(no meu exemplo, isso é /dev/sda4).

    Nesta captura de tela, eu tenho uma instalação Ubuntu não criptografada existente em duas partições: /dev/sda1e /dev/sda5, destaque no círculo à esquerda. Criei uma partição não formatada /dev/sda3e uma partição ext3 /dev/sda4, destinadas à instalação criptografada do Ubuntu, destacadas no círculo à direita:

    Captura de tela do GParted

  3. Crie um contêiner LUKS usando esses comandos. Substitua /dev/sda3pela partição não formatada criada anteriormente e cryptcherriespor um nome de sua escolha.

    sudo cryptsetup luksFormat /dev/sda3
    sudo cryptsetup luksOpen /dev/sda3 cryptcherries
    
  4. Aviso : você notará que a luksFormatetapa foi concluída muito rapidamente, porque não apaga com segurança o dispositivo de bloco subjacente. A menos que você esteja apenas experimentando e não se preocupando com a segurança contra vários tipos de ataques forenses, é essencial inicializar corretamente o novo contêiner LUKS antes de criar sistemas de arquivos nele. Gravar zeros no contêiner mapeado fará com que dados aleatórios fortes sejam gravados no dispositivo de bloco subjacente. Isso pode demorar um pouco, por isso é melhor usar o pvcomando para monitorar o progresso:

    ### 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
    

    ou, se você estiver fazendo uma instalação offline e não conseguir pv:

    sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
    
  5. Dentro do contêiner LUKS montado, crie um volume físico LVM, um grupo de volumes e dois volumes lógicos. O primeiro volume lógico será montado em /e o segundo será usado como swap. vgcherriesé o nome do grupo de volumes e lvcherriesroote lvcherriesswapsão os nomes dos volumes lógicos, você pode escolher o seu.

    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. Crie sistemas de arquivos para os dois volumes lógicos: (Você também pode executar esta etapa diretamente no instalador.)

    sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot
    sudo mkswap /dev/mapper/vgcherries-lvcherriesswap
    
  7. Sem reiniciar , instale o Ubuntu usando o instalador gráfico (o atalho está na área de trabalho no Xubuntu 18.04), escolhendo o particionamento manual. Atribuir /a /dev/mapper/vgcherries-lvcherriesroote /bootpara a partição não criptografada criado no passo 2 (neste exemplo, /dev/sda4).

  8. Quando o instalador gráfico terminar, selecione "continuar testando" e abra um terminal.

  9. Encontre o UUID das partições LUKS ( /dev/sda3neste caso), você precisará mais tarde:

    $ sudo blkid /dev/sda3
    /dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS"
    
  10. Monte os dispositivos apropriados nos locais apropriados /mnte faça o chroot nele:

    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. Crie um arquivo nomeado /etc/crypttabno ambiente chroot para conter esta linha, substituindo o valor UUID pelo UUID da partição LUKS e vgcherriespelo nome do grupo de volumes:

    # <target name> <source device> <key file> <options>
    cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries
    
  12. Execute o seguinte comando no ambiente chroot:

    update-initramfs -k all -c
    
  13. Reinicie e inicialize no Ubuntu criptografado. Você deve ser solicitado a fornecer uma senha.

  14. Verifique se você está usando a partição criptografada /executando 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. Verifique se você está usando a partição de swap criptografada (não nenhuma partição de swap não criptografada de outras instalações) executando este comando:

    $ swapon -s
    Filename                              Type      Size   Used Priority
    /dev/mapper/vgcherries-lvcherriesswap partition 630780 0    -1
    
  16. Verifique se você pode inicializar no modo de recuperação, se não quiser descobrir mais tarde, durante uma emergência, que o modo de recuperação não funciona :)

  17. Instale quaisquer atualizações que provavelmente reconstruam o ramdisk e atualizem a configuração do grub. Reinicie e teste o modo normal e o modo de recuperação.

Flimm
fonte
3
I pode verificar que em 15,04 você pode omitir as etapas 11, 13 e 14, e que, na verdade, pode ser necessário para omitir estes passos (como executar update-grub dessa maneira causou a minha partição do Windows para se perder.)
process91
4
@ process91 Parece que as etapas alteraram os números. Agora você precisa ommit 12, 14 e 15.
Aleksandr Dubinsky
5
Ótimo guia. Funcionou pela primeira vez no Windows 10 com o BitLocker e o Ubuntu 16.04, omitindo as etapas 12, 14 e 15 aqui. Notei que havia alguns outros obstáculos que poderiam ser esclarecidos, principalmente o que você seleciona para a partição do gerenciador de inicialização (ele é instalado em uma partição EFI existente, mas você provavelmente pode apenas selecionar o disco em que está instalando o Ubuntu, por exemplo, / dev / sda). Qualquer pessoa com permissões completas de editor pode copiar e colar da minha redação: stevenmaude.co.uk/posts/…
Steven Maude
5
O @unhammer acabou de editar a resposta e excluiu algumas etapas, para quem lê os comentários e fica confuso.
Flimm
3
O autor já retirou os antigos passos 12,14,15. Portanto, NÃO pule nenhuma etapa. Funciona com o Ubuntu Mate 16.04.1.
user4955663
9

É possível criar uma configuração de inicialização dupla criptografada usando apenas as ferramentas da GUI do Ubuntu LiveCD.

Pré-requisitos

  • Um pendrive com o instalador do Ubuntu 19.04.
  • Se você possui uma placa mãe EFI, verifique se o disco está usando a tabela de partição GUID (GPT). O uso de um disco MBR com esse método parece falhar. Você pode converter um MBR em GPT com as ferramentas Linux ( gdisk), mas primeiro faça um backup. Se você converter a tabela Partition, precisará corrigir o carregador de inicialização do Windows posteriormente.

janelas

  • Na barra de início, digite disk partitione selecione a primeira opção (abrindo o gerenciador de partição de disco nas configurações).

  • Reduza a partição primária para o tamanho desejado do Ubuntu (usei o padrão, dividindo minha unidade de 500 GB em um sistema operacional Windows de 240 GB e espaço não alocado de 240 GB).

BIOS

  • Desative a inicialização segura (se você tiver o bitlocker, precisará renunciá-lo para inicializar com segurança no Windows a cada vez) - isso é bom para mim, já que o Ubu é o meu sistema operacional principal, basta usar o windoze para jogos.

Ubuntu LiveCD

Finalmente - Inicialize no USB 19.04 Installer

  • Clique Enterna opção padrão Instalar o Ubuntu .

  • Quando chegar à tela que diz Apagar disco inteiro e tiver algumas caixas de seleção, clique na opção Algo mais (particionamento manual). Caso contrário, você perderá seus dados do Windows!

Depois que o gerenciador de partição de disco carregar seu disco, você terá um grande espaço não alocado. Clique nele e clique no botão Adicionar para criar partições.

  • Primeiro, crie uma /bootpartição de 500 MB (primária, ext4).
  • Segundo, com o restante do espaço, crie um volume criptografado. Isso criará uma única partição LV. Modifique-a para ser a /partição raiz selecionada .
  • O restante do processo de instalação funcionará normalmente.

Quando você inicializa pela primeira vez, efetue login, abra um terminal, execute sudo apt-get updatee sudo apt dist-upgrade, reinicie e efetue login novamente.

Um arquivo de troca de 2 GB será criado automaticamente. Se você preferir um de 8GB, leia esta resposta .

Falieson
fonte
4
Em maio de 2019, essa é a resposta preferida (parece funcionar desde 2012, na verdade), sem necessidade de complicação na linha de comando. No particionamento, depois de criar o volume físico para criptografia, não vi o novo /dev/mapper/sdaX_crypt no topo da lista . Este guia tem capturas de tela e visualiza a formatação da partição; pode ser útil: hecticgeek.com/2012/10/…
firepol
Boa resposta, @Falieson! Mas, eu não entendi nos primeiros 14 dias e 17 horas de pesquisa que eu analisei, então acho que vou escrever minha própria resposta com capturas de tela. Esse artigo postado por @firepol ( hecticgeek.com/2012/10/… ) foi SUPER útil, e somente após esse artigo sua resposta fez algum sentido para mim.
Gabriel Staples
Além disso, gostaria de adicionar da próxima vez que você sair do Windows Bitlocker e mudar para o VeraCrypt. É gratuito e de código aberto, sem nenhum custo, e parece funcionar muito bem com inicialização dupla. Minha partição do Windows está em uso, assim como meus discos rígidos externos e alguns volumes locais baseados em arquivos agora. Aqui está um ótimo vídeo de introdução ao VeraCrypt: youtube.com/watch?v=C25VWAGl7Tw e sua página de downloads: veracrypt.fr/en/Downloads.html . Para a criptografia LUKS baseada em Linux em unidades externas ext4, no entanto, estou usando o utilitário Ubuntu Disks incluído , que possui uma caixa de seleção de criptografia LUKS ao formatar.
Gabriel Staples
5

Primeiro, aponta por que apenas a criptografia da partição Linux pode não ser segura o suficiente para você:

  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

Agora, segui este 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

Nesta resposta, estou apresentando uma instalação passo a passo (com fotos) do Linux Mint 19.1 XFCEe Ubuntu 18.04.2, ambas totalmente criptografadas em um único disco. Primeiro eu instalado Ubuntu 14.04.2em /dev/sda5e eu não criar as partições swap porque Linux Mint 19.1e Ubuntu 18.04.2não usá-los, ou seja, eles usam arquivos de swap.

Ubuntu 18.04.2 Bionic Beaver

Primeiro, insira a Ubuntumídia de instalação e reinicie a máquina na Ubuntusessão ao vivo; em seguida, selecione Try Ubuntue abra um terminal;

  1. sudo su -
  2. fdisk /dev/sda, crie as seguintes partições
    • insira a descrição da imagem aqui
  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(opcional, em vez de executar lvcreate -L10G -n ubuntu_root vgubuntu, você pode executar isso lvcreate -l 100%FREE -n ubuntu_root vgubuntupara usar todo o espaço livre em disco, em vez de apenas 10 GB)
    • insira a descrição da imagem aqui
  8. Não feche o terminal e abra o instalador da distribuição, selecione Outra coisa e instale-o com
    • /dev/sda1montado como /bootpartição com ext2formato
    • /dev/mapper/vgubuntu-ubuntu_rootmontado como /no ext4formato.
    • /dev/sda como instalação do carregador de inicialização
    • Não marque mais nada
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  9. Não reinicie, clique em Continue Using Linux e selecione o terminal aberto
  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 (copie o UUID sem aspas e use-o na próxima etapa)
  20. echo sda5_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  21. Crie o arquivo /etc/grub.d/40_custom
    • insira a descrição da imagem aqui
  22. Editar /etc/default/grube definir
    • GRUB_TIMEOUT_STYLE=menu
    • GRUB_TIMEOUT=10
    • insira a descrição da imagem aqui
  23. update-initramfs -u
  24. update-grub
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  25. exit
  26. reboot
  27. Após reiniciar o computador, selecione a opção Ubuntue ela solicitará corretamente sua senha de criptografia
    • insira a descrição da imagem aqui
  28. Depois de fazer login, execute
    • sudo apt-get update
    • sudo apt-get install gparted
  29. E abrindo, gpartedvocê encontrará isso
    • insira a descrição da imagem aqui

Para obter instruções mais detalhadas, leia o tutorial original indicado na parte superior desta pergunta ou pesquise no google sobre o uso desses comandos.


Linux Mint 19.1 Canela

Para as instalações Linux restantes, rebootsua Ubuntumáquina, inicialize com o Mint 19.1instalador (Live CD) e abra uma janela do terminal

  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(opcional, em vez de executar lvcreate -L10G -n mint_root vgmint, você pode executar isso lvcreate -l 100%FREE -n mint_root vgmintpara usar todo o espaço livre em disco, em vez de apenas 10 GB)
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  7. Não feche o terminal e abra o instalador da distribuição, selecione Outra coisa e instale-o com
    • /dev/sda2montado como /bootpartição com ext2formato
    • /dev/mapper/vgmint-mint_rootmontado como /no ext4formato.
    • /dev/sda2como instalação do carregador de inicialização (não selecione /dev/sdacomo antes)
    • Não marque mais nada
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  8. Não reinicie, clique em Continue Using Linux e selecione o terminal aberto
  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 (copie o UUID sem aspas e use-o na próxima etapa)
  19. echo sda6_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  20. update-initramfs -u
  21. update-grub
    • insira a descrição da imagem aqui
    • insira a descrição da imagem aqui
  22. exit
  23. reboot
  24. Após reiniciar o computador, selecione a opção Linux Mint on /dev/sda2
    • insira a descrição da imagem aqui
  25. Em seguida, será iniciado corretamente Mint 19.1e solicitada a senha de criptografia
    • insira a descrição da imagem aqui
  26. Depois de fazer login, execute
    • sudo apt-get update
    • sudo apt-get install gparted
  27. E abrindo, gpartedvocê encontrará isso
    • insira a descrição da imagem aqui

Links Relacionados:

  1. Como redimensionar uma partição LVM ativa?
  2. Como posso redimensionar uma partição LVM? (ou seja: volume físico)
  3. https://www.tecmint.com/extend-and-reduce-lvms-in-linux/
  4. O carregador de cadeia Grub não funciona com o Windows 8
  5. Inicialização UEFI com criptografado / boot no Ubuntu 14.04 LTS
do utilizador
fonte
11
Eu tenho 1 disco rígido no meu computador e ele tinha um Kubuntu 18.04 não criptografado existente. Instalei o segundo Kubuntu 18.04 criptografado perto do primeiro Kubuntu não criptografado com base nisso. Agora, ambos estão funcionando bem em um disco rígido. Obrigado pela resposta detalhada.
Ikrom 22/04
11
A parte sobre o Linux Mint deve ser removida desta resposta. Esta parte é off-topic, não foi solicitada pelo OP, torna a resposta desnecessária e leva a perguntas de acompanhamento off-topic como esta .
mook765 25/07
-1 para a peça relacionada à Casa da Moeda.
user68186 25/07