
Eu gostaria de ter um diretório eCryptfs montado "com segurança" automaticamente na inicialização, sem fazer login. Meu cenário é o seguinte: tenho um servidor ArchLinux incorporado (baseado em ARM) que usa um cartão microSD removível para armazenamento persistente e sistema de arquivos.
Eu gostaria de ter um diretório criptografado no cartão microSD para que, se alguém retirar o cartão microSD e tentar copiá-lo, não consiga acessar os arquivos no diretório criptografado.
Meu pensamento foi este:
Use dmidecode
para obter o ID e a "impressão digital de hardware" de um servidor e use um hash da dmidecode
saída como senha para criptografar o diretório.
Então, o que eu quero fazer é, na inicialização, extrair dmidecode
as informações, fazer o hash e usar o eCryptfs para montar automaticamente usando o hash como senha.
Portanto, a senha não é armazenada em lugar nenhum, ela é puxada na inicialização e usada para desbloqueá-la. A fraqueza óbvia é que alguém que olha a sequência de inicialização pode ver como ela funciona e, em seguida, obter a senha tendo acesso físico ao servidor. Como é específico para o servidor (assumindo um número de série exclusivo para o processador), eles não poderiam obter um hardware de servidor incorporado semelhante, precisariam daquele vinculado ao cartão microSD específico.
Principalmente, isso serve como um impedimento para alguém roubar o cartão microSD (mas não o servidor incorporado) e copiá-lo.
Acho que minha pergunta final é: como adicionaria isso à sequência de inicialização? Estou usando o Arch Linux v3 em hardware baseado em ARM.