3 votes

Automatisation de la procédure de montage ecryptfs

Je suis la procédure ci-dessous pour monter mon répertoire privé.

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

Je veux écrire un script pour automatiser tout le processus. Je veux passer les phrases de passe, le chiffrement, les octets de clé etc. en utilisant un fichier.

J'ai essayé la commande de montage ci-dessous, basée sur la documenetation 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/

où key.txt est

root@testpc:/home/testpc# cat key.txt 
passphrase_passwd=1234

Une fois que la commande ci-dessus est exécutée, elle demande FNEK.

Filename Encryption Key (FNEK) Signature [13e8b1bc6090e91d]:

Y a-t-il un moyen de faire passer ce fichier pour automatiser tout le processus ? Une fois le PC lancé, il ne devrait pas me demander de phrase de passe.

Est-ce que ecryptfs-add-passphrase peut être utile ici ?

Merci d'avance, Murali Marimekala

0voto

David Grant Points 8477

Une fois que la commande ci-dessus est exécutée, elle demande FNEK.

Filename Encryption Key (FNEK) Signature [13e8b1bc6090e91d]:

Y a-t-il un moyen de faire passer ce fichier pour automatiser tout le processus ?

Vous avez oublié d'ajouter ecryptfs_fnek_sig= aux options avec la signature FNEK que vous voulez utiliser ou que vous avez déjà utilisée. J'utilise cependant ecryptfs mount et il ne me demande pas de FNEK car j'ai les options définies dans ma commande.

0voto

Murali Points 67

Mis en œuvre ci-dessous script qui a résolu mon problème. Si vous avez d'autres suggestions, n'hésitez pas à m'en faire part.

#!/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

N'hésitez pas à le consulter et à me faire part de vos commentaires.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X