Executando python para desbloquear a criptografia completa do disco luks

Executando python para desbloquear a criptografia completa do disco luks

Desejo usar criptografia completa de disco usando Luks no Ubuntu 14.04. No entanto, desejo usar meu próprio script python para executar a funcionalidade de gerar a chave de descriptografia durante a inicialização do dispositivo, que ele envia para Luke para permitir a descriptografia.

Idealmente, eu gostaria de "resultado do script python" + "o usuário insere a chave de descriptografia", que é então passada para Luke para permitir que o dispositivo seja descriptografado. Posso então implementar minha própria funcionalidade no python para criar um 'segundo fator' para permitir a descriptografia do dispositivo.

Eu pesquisei, mas realmente não encontrei a resposta para minha pergunta. Você pode ajudar ou dar algum conselho?

Obrigado.

Responder1

Se você usar criptografia completa de disco para seu sistema de arquivos raiz, terá que resolver o problema de que o interpretador Python normalmente não está disponível no início da inicialização. Você precisará de vários megabytes de espaço em disco não criptografado adicional para armazenar, por exemplo, /usr/bin/python2.7e um monte de coisas essenciais, /usr/lib/python2.7e terá que desenvolver várias modificações para /boot/initrdfazer isso funcionar.

O processo de inicialização é invocado /scripts/local-top/cryptroota partir da raiz do initrd. Isso normalmente chama a ferramenta plymouth ask-for-password --prompt. Isso é usado para solicitar a senha ao usuário antes que a interface gráfica do usuário seja iniciada. Esta senha, por sua vez, é canalizada para o cryptsetup.

Se você ainda deseja continuar com essa abordagem, você pode/deve usar um arquivo de configuração no diretório de configuração /etc/initramfs-tools/para configurar um novo valor para você, cryptkeyscriptem vez de hackear o script /usr/share/initramfs-tools/scripts/local-top/cryptrootdiretamente. Isso tornará a instalação de atualizações de distribuição do sistema operacional menos complicada posteriormente.

Para mais informações consulte a documentação dos pacotes initramfs-tools, cryptsetup e plymouth e dê uma olhada no shell script cryptrootque mencionei acima.

informação relacionada