Ubuntu criptografa SSD + / home (HDD)

2

Eu tenho um SSD e HDD.

Ao instalar o Ubuntu, quero "Apagar disco e instalar o Ubuntu" e também "Criptografar a nova instalação do Ubuntu para segurança".

Isso torna meu / home em SSD, mas gostaria de tê-lo no HDD, mas também criptografado. Como posso fazer isso?

EDITAR :

sda                       8:0    0 223,6G  0 disk  
├─sda1                    8:1    0   512M  0 part  /boot/efi
├─sda2                    8:2    0   732M  0 part  /boot
└─sda3                    8:3    0 222,4G  0 part  
  └─sda3_crypt          253:0    0 222,4G  0 crypt 
    ├─ubuntu--vg-root   253:1    0 206,4G  0 lvm   /
    └─ubuntu--vg-swap_1 253:2    0  15,9G  0 lvm   [SWAP]
sdb                       8:16   0 931,5G  0 disk  
└─sdb1                    8:17   0 931,5G  0 part  
  └─home_drive          253:3    0 931,5G  0 crypt /mnt
  • swap redimensionar será o próximo passo (ou até mesmo desabilitado)
por Gohan 09.11.2017 / 22:33

1 resposta

2

Ah, particionamento personalizado. Isso é divertido, especialmente quando você está tentando criptografar volume cruzado. Eu vou assumir que você não quer ir excessivamente louco (sim, isso é minha estrutura de partição) e use o LVM dentro do LUKS aqui. Eu também vou supor que você já instalou as coisas, pois torna este processo um pouco mais fácil.

Parte I: Configurando sua Partição LUKS

Você terá que começar criando uma nova partição EXT4 no seu disco rígido. Faça com que ele ocupe o espaço que você quiser.

Em seguida, você precisará executar cryptsetup para configurar a criptografia. O comando que você quer será:

cryptsetup luksFormat /dev/sdXY

Substitua /dev/sdXY pelo que estiver apontando para sua nova partição EXT4. Você será solicitado a escolher uma senha. Escolha um strong e anote-o . Você não terá que se lembrar disso no momento em que terminar (você verá por que, conforme nos aprofundarmos nesse post).

Em seguida, precisamos criar outra partição ext4 dentro do seu contêiner LUKS, que eventualmente manterá /home . Esses comandos vão conseguir isso:

cryptsetup open --type luks /dev/sdXY home_drive
mkfs -t ext4 /dev/mapper/home_drive
cryptsetup close home_drive

Em seguida, execute blkid e anote o UUID do seu novo contêiner LUKS (em /dev/sdXY ). Você precisará disso em um segundo.


Parte II: Ativar a descriptografia automática

Agora, precisamos configurar algo chamado decrypt_derived , que permite "encadear" operações de descriptografia.

Ao fazer isso, permitiremos que uma senha funcione em ambas as unidades. Na verdade, sua primeira unidade descriptografada será a senha da segunda unidade. Sua senha (escolhida acima) ainda funcionará em caso de emergência (pense em recuperação de dados ou similar).

Execute os comandos abaixo / edições de arquivos. Certifique-se de renomear ubuntu_crypt para qualquer que seja sua chamada atual (veja /etc/crypttab para encontrar isto). Substitua também /dev/sdXY pela sua nova partição LUKS.

/lib/cryptsetup/scripts/decrypt_derived ubuntu_crypt > /tmp/home_keyfile
cryptsetup luksAddKey /dev/sdXY /tmp/home_keyfile
shred -u /tmp/home_keyfile

Em seguida, você desejará adicionar a seguinte linha a /etc/crypttab :

home_drive UUID=<your_drive_uuid> ubuntu_crypt luks,keyscript=/lib/cryptsetup/scripts/decrypt_derived

Se você estiver usando um SSD para sua unidade inicial, substitua luks,keyscript=... por luks,discard,keyscript=... .


Parte III: Adicionar a /etc/fstab

Agora que seu sistema está configurado e pode montar automaticamente a unidade, precisamos tornar /etc/fstab ciente disso.

Felizmente, esta é apenas uma única linha que precisa ser adicionada abaixo da entrada / em /etc/fstab . Esta linha será parecida com:

/dev/mapper/home_drive    /mnt    ext4    errors=remount-ro    0    1


Parte IV: Testando-o

Em seguida, você vai querer montar sua nova partição inicial (pronta para usar!). Seus comandos serão algo como:

cryptsetup open --type luks /dev/sdXY home_drive
mount /dev/mapper/home_drive /mnt

Copie sua pasta de início atual para a nova unidade e verifique se tudo está funcionando corretamente.

Finalmente, você só precisa executar o comando abaixo para tornar seu sistema ciente de sua cripta:

update-initramfs -u -k all

Reinicialize seu sistema e verifique se você só precisará inserir sua senha uma vez. Se você precisar fazer isso mais de uma vez, algo deu errado. Verifique novamente todos os seus passos.

Quando estiver on-line novamente, confirme se /mnt tem todos os dados da sua casa presentes nele.


Parte V: Mover-se para o real

Agora, reabra a /etc/fstab novamente e edite sua nova linha, substituindo /mnt por /home . Deve ficar assim:

/dev/mapper/home_drive    /home    ext4    errors=remount-ro    0    1

Salve o arquivo.

Execute update-initramfs -u -k all mais uma vez e reinicie o sistema.

Quando voltar, execute lsblk e verifique se o seu homedir está montado na nova unidade.

Quando estiver satisfeito, você precisará se livrar dos seus dados antigos. O problema é que uma montagem substituirá a pasta atual por ela mesma, portanto, não há como acessar esses dados (e você não pode excluir seu homedir durante a execução). Então, você precisará fazer um bindmount:

mount --bind / /mnt

Execute touch /mnt/home/test e execute imediatamente cat /home/test e certifique-se de que o arquivo não foi encontrado. Se o arquivo for encontrado, algo está errado com sua configuração de montagem.

Quando tiver certeza de que /home/test não existe, mas /mnt/home/test , você pode excluir sua antiga casa com rm -rf /mnt/home/* .

Seu sistema agora estará no seu SSD e seu homedir estará em sua própria unidade criptografada!

    
por Kaz Wolfe 09.11.2017 / 23:22