Alterar a senha de um diretório ecryptfs

9

Eu quero ter um diretório criptografado (não homedir!), Digamos / testdata.

Eu usei o seguinte comando e parâmetros para criptografá-lo:

root@pc:~# mount -t ecryptfs /testdata/ /testdata/
Passphrase: 
Select cipher: 
 1) aes: blocksize = 16; min keysize = 16; max keysize = 32
 2) blowfish: blocksize = 8; min keysize = 16; max keysize = 56
 3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24
 4) twofish: blocksize = 16; min keysize = 16; max keysize = 32
 5) cast6: blocksize = 16; min keysize = 16; max keysize = 32
 6) cast5: blocksize = 8; min keysize = 5; max keysize = 16
Selection [aes]: 
Select key bytes: 
 1) 16
 2) 32
 3) 24
Selection [16]: 
Enable plaintext passthrough (y/n) [n]: 
Enable filename encryption (y/n) [n]: y
Filename Encryption Key (FNEK) Signature [b9fc92f854a4c85b]: 
Attempting to mount with the following options:
  ecryptfs_unlink_sigs
  ecryptfs_fnek_sig=b9fc92f854a4c85b
  ecryptfs_key_bytes=16
  ecryptfs_cipher=aes
  ecryptfs_sig=b9fc92f854a4c85b
WARNING: Based on the contents of [/root/.ecryptfs/sig-cache.txt],
it looks like you have never mounted with this key 
before. This could mean that you have typed your 
passphrase wrong.

Would you like to proceed with the mount (yes/no)? : yes
Would you like to append sig [b9fc92f854a4c85b] to
[/root/.ecryptfs/sig-cache.txt] 
in order to avoid this warning in the future (yes/no)? : yes
Successfully appended new sig to user sig cache file
Mounted eCryptfs

Este comando cria este arquivo:

root@pc:~# cat .ecryptfs/sig-cache.txt 
b9fc92f854a4c85b

Agora, quero alterar a senha que usei antes. Encontrei o ecryptfs-rewrap-passphrasecomando, mas não tenho certeza se estou no caminho certo:

root@pc:~# ecryptfs-rewrap-passphrase .ecryptfs/sig-cache.txt 
Old wrapping passphrase: 
New wrapping passphrase: 
New wrapping passphrase (again): 
Error: Unwrapping passphrase failed [-5]
Info: Check the system log for more information from libecryptfs

/var/log/syslog diz:

Jul 13 13:16:19 pc ecryptfs-rewrap-passphrase: ecryptfs_unwrap_passphrase: PK11_CipherOp() error; SECFailure = [-1]; PORT_GetError() = [-8188]

Eu tenho um status de novato em relação ao ecryptfs e gostaria de receber alguma iluminação aqui.

Theodotos Andreou
fonte

Respostas:

10

Vejo que você está tentando enviar a senha em um arquivo com outro significado.

ecryptfs-rewrap-passphrase /home/.ecryptfs/$USER/.ecryptfs/wrapped-passphrase 

ou certamente ... mas melhor procurar manualmente o wrapped-passphrasena sua .ecryptfsdiretório oculto:

ecryptfs-rewrap-passphrase /home/$USER/.ecryptfs/wrapped-passphrase

Eu acho que este é o comando certo para alterar a senha, onde $USERestá o seu usuário

PS: É melhor não estar logado e com sua pasta descriptografada.

Leon
fonte
11
Obrigado pela resposta Leon. Não tenho / quero uma conta de usuário criptografada. Eu só quero um diretório criptografado que montarei manualmente quando precisar dos dados. Sinto que ecryptfs-rewrap-passphrasenão é a ferramenta certa para este trabalho. Também não há home/.ecryptfsdiretório, pois não tenho um usuário com um diretório criptografado. Existe uma maneira de alterar a senha no meu diretório criptografado manualmente?
Theodotos Andreou
2

Não há como alterar a senha em tempo real, pois o ecryptfs criptografa cada arquivo com essa senha individualmente e todos os arquivos precisam ser reescritos com a nova senha.

Então, tudo que você pode fazer é criar um novo diretório, montá-lo com a nova senha e copiar todos os arquivos por lá.

A exceção é quando você usa o Ubuntu para criar uma instalação / home / criptografada. Quando o Ubuntu é configurado dessa maneira, ele não usa sua senha para criptografia de arquivos diretamente, mas gera uma senha aleatória que é salva ~/.ecryptfs/wrapped-passphrase. Esse arquivo é então criptografado com sua senha pessoal. Assim, sua frase de fase pessoal pode ser alterada; o arquivo da senha de criptografia de arquivos permanece o mesmo. Pode ser possível recriar esse comportamento ao montar coisas manualmente, mas, por padrão, esse não é o caso e sua senha pessoal é usada diretamente para criptografia de arquivos.

Grumbel
fonte
0

As etapas reais estão no Ubuntu 12.04 LTS:

Inicialize a partir do CD / USB do Ubuntu Monte a partição com o Nautilus (maneira fácil)

sudo ecryptfs-rewrap-passphrase /media/8de07fc2-637c-4218-b0e9-5043685c3e6b/home/.encryptfs/$USER/.ecryptfs/wrapped-passphrase

Você precisa restaurar a propriedade

sudo chown 1000:root /media/8de07fc2-637c-4218-b0e9-5043685c3e6b/home/.encryptfs/$USER/.ecryptfs/wrapped-passphrase

Reiniciar

Zoltan Horvath
fonte