Como abrir vários volumes LUKS com a chave digitada no initramfs?

6

Eu tenho um servidor baseado em Debian 7.4 (estável) configurado para usar uma partição raiz criptografada (RAID1 + LVM) (/ boot é uma partição regular não criptografada) na qual instalei servidor SSH dropbear para que eu possa inserir remotamente a criptografia LUKS frase secreta.

Além da partição / volume raiz, eu tenho outros volumes RAID1 + cryptsetup + LVM que eu gostaria de poder abrir com a mesma frase secreta. Eu pesquisei e descobri que posso usar o script /lib/cryptsetup/scripts/decrypt_keyctl para armazenar senhas em cache e abrir vários volumes com a mesma frase secreta. Mas como eu uso esse script com a senha inserida no estágio initramfs?

    
por Dago 31.03.2014 / 08:45

1 resposta

2

Você pode colocar a senha em um arquivo e reutilizá-la com o parâmetro --key-file . Usar um arquivo de chaves aleatório em vez de uma senha de texto simples nessa configuração pode ser preferível.

echo -n password > pwfile
for luks in md1 md2 md3
do
    cryptsetup luksOpen --key-file=pwfile /dev/"$luks" luks"$luks"
done

Pessoalmente, usei uma abordagem ligeiramente diferente com os arquivos-chave criptografados do LUKS:

Nesta configuração, a frase secreta única desbloqueia um armazenamento de arquivo-chave que contém chaves aleatórias para vários outros contêineres LUKS. Isso é particularmente útil para /boot nas configurações USB, portanto, /boot não pode ser adulterado e um keylogger de hardware sozinho não é suficiente para obter as chaves dos discos internos.

    
por 31.03.2014 / 14:29