Você esqueceu de adicionar ecryptfs_fnek_sig=
às opções com a assinatura FNEK que deseja usar ou já usou antes. Eu uso o ecryptfs embora monte e ele não me pede o FNEK porque eu tenho as opções definidas no meu comando.
Estou seguindo o procedimento abaixo para montar meu diretório particular
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
Eu quero escrever um script para automatizar todo o processo. Eu quero passar as frases secretas, cifra, bytes chave etc usando um arquivo.
Tentei abaixo o comando mount com base na documentação ecryptfs.7
mount -t ecryptfs -o key=passphrase:passphrase_passwd_file=/home/testpc/key.txt,no_sig_cache,verbose,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_enable_filename=y,ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=y secure_folder1/ secure_folder1/
em que key.txt é
root@testpc:/home/testpc# cat key.txt
passphrase_passwd=1234
Uma vez que o comando acima é executado, ele solicita o FNEK.
Filename Encryption Key (FNEK) Signature [13e8b1bc6090e91d]:
Existe alguma maneira que eu possa passar isso através de arquivo para automatizar todo o processo? Quando o PC aparecer, ele não deve me pedir uma senha.
Será que o ecryptfs adiciona senha de alguma ajuda aqui?
Obrigado antecipadamente, Murali Marimekala
Você esqueceu de adicionar ecryptfs_fnek_sig=
às opções com a assinatura FNEK que deseja usar ou já usou antes. Eu uso o ecryptfs embora monte e ele não me pede o FNEK porque eu tenho as opções definidas no meu comando.
Implementado abaixo do script que resolveu meu problema. Qualquer sugestão melhor, por favor me avise.
#!/bin/bash
#Argument 1 will be the mountphrase
mountphrase=$1
echo $mountphrase
echo "passphrase_passwd=${mountphrase}" > /home/testpc/key.txt
#Add tokens into user session keyring
printf "%s" "${mountphrase}" | ecryptfs-add-passphrase - > tmp.txt
#Now get the signature from the output of the above command
sig='tail -1 tmp.txt | awk '{print $6}' | sed 's/\[//g' | sed 's/\]//g''
echo $sig
rm -f tmp.txt #Remove temp file
#Now perform the mount
sudo mount -t ecryptfs -o key=passphrase:passphrase_passwd_file=/home/testpc/key.txt,no_sig_cache,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_enable_filename=y,ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=y,ecryptfs_fnek_sig=${sig},ecryptfs_sig=${sig},ecryptfs_unlink_sigs /home/testpc/Ecryptfs/secure5 /home/testpc/Ecryptfs/secure5
rm -rf /home/testpc/key.txt
Por favor, reveja e deixe-me saber seus comentários.