É possível simplesmente armazenar a senha do luks em um arquivo.
Eu uso isso no meu computador em casa; O sistema de arquivos raiz vive em um volume normal do luks que eu desbloqueio com a minha senha na inicialização. Uma unidade adicional contém um volume luks com uma senha gerada.
Esse volume adicional é desbloqueado por um arquivo de senha que fica no sistema de arquivos raiz criptografado. Ele é desbloqueado automaticamente durante a inicialização se o sistema de arquivos raiz estiver desbloqueado.
Minha /etc/crypttab
aparência é assim:
crypt-root UUID=c5a2cf25-0aae-457e-874f-fca7ea3d5742 none luks
crypt-data UUID=96d79323-246d-49e0-9149-ec3a4cfc1c1e /etc/crypt-data.key luks
O terceiro campo é o arquivo de chave, none
para o sistema de arquivos raiz, mas /etc/crypt-data.key
para o sistema de arquivos de dados. /etc/crypt-data.key
contém a senha do luks:
Tm90IHJlYWxseSBteSBwYXNzd29yZC4K
Observe que uma nova linha ou qualquer outro espaço em branco será usado como parte da senha! Tome cuidado para gerar esse arquivo sem seguir a nova linha. Além disso, verifique se ele possui permissões estritas:
-rw------- 1 root root 59 Sep 14 23:57 /etc/crypt-data.key
Você deve poder duplicar essa abordagem para vários volumes (com senhas distintas ou uma senha compartilhada, sua escolha).