Ceci est une ancienne révision du document !
Ecryptfs : Un dossier privé chiffré dans son Home
Ecryptfs est un outil pour créer un dossier privé (~/Private), chiffré et inaccessible aux autres utilisateurs, il est destiné à contenir tous les fichiers "sensibles" que vous pourriez avoir : vos fichiers contenant des mots de passe, les données confidentielles relatives à vos comptes bancaires, vos emails…
Installation
Il suffit d'installer le paquet ecryptfs-utils.
ou en mode console :
sudo apt-get install ecryptfs-utils
Configuration
ecryptfs-setup-private
A l'invite
Enter your login passphrase:
Entrez le mot de passe que vous utilisez pour vous connecter.
Enter your mount passphrase [leave blank to generate one]:
Choisissez une phrase secrète ou laissez vide pour en générer une.
Enter your mount passphrase (again):
Reconfirmez votre phrase secrète.
Enregistrez votre phrase secrète dans un lieu sûr, elle sera requise pour récupérer vos données ultérieurement.
Record your encryption passphrase To encrypt your home directory or "Private" folder, a strong passphrase has been autogenerated. Usually your directory is unlocked with your user password, but if you ever need to manually recover this directory, you will need this passphrase. Please print or write it down and store it in a safe location. You can run the "ecryptfs-unwrap-passphrase" command now to do this. Enter your user password at the "Passphrase" prompt.
Est-ce pour chiffrer le home ?
Utilisation
Une fois l'installation faite, vous devrez vous rendre dans le dossier "~/Private" dans lequel vous trouverez un raccourci à exécuter afin de monter votre espace privé.
Sinon :
Monter le répertoire :
mount.ecryptfs_private
Démonter le répertoire :
umount.ecryptfs_private
Une autre manière de l'utiliser
Pour éviter d'utiliser la ligne de commande il est possible d'utiliser ce script :
http://forum.ubuntu-fr.org/viewtopic.php?pid=2253871
Désinstallation
Pour supprimer cette application, il suffit de supprimer son paquet. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez.
Problèmes
Mot de passe modifié
Solution 1
Si vous avez modifié votre mot de passe depuis la ligne de commande :
passwd votre_login
Votre dossier chiffré est devenu illisible et non-déchiffrable parce que le montage du dossier ecryptfs est basé sur votre mot de passe et la passphrase. Ecryptfs étant le système de fichiers chiffrés utilisé. Vous pouvez vous en tirer si vous connaissez la passphrase mais vous n'avez aucune solution dans le cas contraire. Si vous vous souvenez de votre passphrase, il vous suffira de monter le dossier chiffré vous-même manuellement et le tour sera joué :
sudo mount -t ecryptfs ~/.Private ~/Private -o key=passphrase,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=n
La passphrase vous sera demandée et le dossier Private sera monté correctement.
Solution 2
Si vous avez modifié votre mot de passe depuis la ligne de commande, vous remarquerez que la passphrase utilisée pour monter votre dossier personnel chiffré n'est PAS mise à jour. Ceci évite qu'un super utilisateur (ex. : root) puisse accéder à vos données simplement en modifiant votre mot de passe d'utilisateur et en se connectant avec votre identifiant.
Afin de modifier votre mot de passe de connexion :
passwd votre_login
Saisissez votre ancien mot de passe, le nouveau et confirmez-le.
Puis modifiez votre passphrase Ecryptfs (pour qu'elle coïncide avec votre nouveau mot de passe). Pour modifier votre passphrase Ecryptfs :
ecryptfs-rewrap-passphrase ~/.ecryptfs/wrapped-passphrase
Vous devrez saisir votre ancienne passphrase, puis la nouvelle.
Récupération du contenu d'un répertoire "/home" chiffré
Si par exemple, pour une raison quelconque votre Ubuntu ne démarre plus ou que vous souhaitez récupérer les données d'un ordi tombé en panne, il va falloir déchiffrer votre répertoire /home. Il est difficile de trouver de la documentation sur la façon de faire, alors après avoir galéré plusieurs heures, et jonglé avec différentes clés, je vous donne la solution.
Etape 1 : obtenir la passphrase
Tout d'abord, il faut monter le Ubuntu planté pour qu'il soit accessible dans "/media"
sudo ecryptfs-unwrap-passphrase /media/Ubuntu/home/.ecryptfs/stephane/.ecryptfs/wrapped-passphrase
(le mot de passe demandé est celui de la session utilisateur)
("/media/Ubuntu/home/.ecryptfs/stephane" est le répertoire "/home" de mon Ubuntu planté)
Vérifier bien que cette passphrase n'est pas celle du système actuellement démarré, la passphrase doit être différente de celle-ci:
sudo ecryptfs-unwrap-passphrase
Etape 2 : obtenir les 2 clés "fnek"
ecryptfs-add-passphrase --fnek
(lorsque l'on vous demande la passphrase, il ne faut pas confondre avec votre mot de passe session, mettez la passphrase obtenue ci-dessus) On vous donne 2 clés, il faut copier la seconde dans un fichier texte, elle permettra de déchiffrer les noms de fichiers.
Etape 3 : Montage
Créer un répertoire vide qui permettra de visualiser le contenu déchiffré. Par exemple "/media/Backup/1/" chez moi
Je ne sais pas à quoi sert cette commande, mais si vous ne l'exécutez pas, le déchiffrement du contenu des fichiers fonctionnera, mais pas celui des noms de fichiers :
ecryptfs-add-passphrase
Ensuite on croise les doigts :
sudo mount -t ecryptfs /media/Ubuntu/home/.ecryptfs/stephane/.Private/ /media/Backup/1/
(appuyez sur "entrée" pour appliquer les réglages par défaut sauf à la question "Enable filename encryption (y/n) [n]: y", répondez oui et renseignez la clé n°2) (il se peut que vous ayez aussi à répondre à la question "Monter le contenu ?", répondez "yes")
Cette dernière commande fonctionne aléatoirement chez moi, si elle ne fonctionne pas vous pouvez aussi répondre non à la question "Enable filename encryption (y/n) [n]:" mais les noms de fichiers seront du type "vqejeireirqjù" Utile à savoir si par exemple vous n'avez qu'un fichier à récupérer, vous pourrez le trouver par tâtonnement.