web-dev-qa-db-fra.com

Dossier personnel crypté toujours accessible après la déconnexion

Si vous avez un compte avec un dossier personnel crypté, vous ne pouvez pas accéder aux données en texte brut de l’utilisateur dans son dossier personnel si cet utilisateur ne s’est pas connecté depuis le dernier démarrage du système. C'est ce à quoi je m'attendais, car l'accès au dossier de départ d'un utilisateur ne devrait pas être réalisable dans la pratique, sans que son mot de passe soit entré.

Cependant, j'ai constaté que lorsqu'un utilisateur avec un dossier personnel crypté se connecte puis se déconnecte, les données en texte brut de son dossier personnel sont toujours accessibles aux autres utilisateurs. Des privilèges d'accès suffisants sont nécessaires, bien sûr.

w ne répertorie pas l'utilisateur et la sortie de Sudo pgrep -u <username> est vide, ce qui indique que l'utilisateur n'a aucun processus en cours d'exécution.

Quelle est la raison de ce comportement? Pourquoi ne pas simplement verrouiller le dossier personnel de l'utilisateur après sa déconnexion?

12
UTF-8

Bug connu

Si je comprends bien, il s’agit d’un bogue connu.

Voir ce lien: wiki.archlinux.org/index.php/ECryptfs

Faites défiler jusqu'au paragraphe rose

Avertissement: Malheureusement, le démontage automatique est susceptible de rompre avec systemd et des bogues sont répertoriés contre celui-ci ...

Solution de contournement

Dans l’état actuel des choses, vous feriez mieux d’arrêter ou de redémarrer pour supprimer les traces (C’est pas assez pour se déconnecter).

5
sudodus

Je ne peux ni le vérifier ni le confirmer, mais en supposant que vous utilisiez ecryptfs (ce que Ubuntu propose lors de l'installation, IIRC), les données chiffrées sont stockées dans un dossier caché /home/.encryptfs/$USER et montées à l'emplacement de votre dossier personnel à l'aide du pilote ecryptfs. lorsque vous vous connectez.

Il est donc probable que lorsque vous vous déconnectez, le démontage automatique du répertoire échoue, de sorte que les fichiers sont toujours accessibles. Cela pourrait être causé par ...

  • une mauvaise configuration (elle était peut-être supposée être configurée pour se désinstaller à la déconnexion mais ne l'était pas)
  • type de déconnexion inattendu (parfois, ces solutions fonctionnent pour le DM connexion/déconnexion mais ne fonctionnent pas bien sinon)
  • si le démontage est géré par un script de déconnexion (ce qui n'est pas nécessairement le cas), un événement précédant la commande unmount peut échouer et provoquer la fermeture anticipée du script.

Une chose qui peut vous aider à vérifier cela serait d'exécuter Sudo mount | grep home avant la connexion, après la connexion et après la déconnexion, pour voir si quelque chose impliquant home est en cours de montage. Vous pouvez également rechercher dans /etc/fstab les entrées pertinentes. Enfin, il y a quelques config dans /home/.ecryptfs/$USER/.ecryptfs/ avec des paramètres pertinents pour le montage/démontage automatique.

Des informations utiles sur ecryptfs sont disponibles dans cette réponse et toujours utile ArchWiki .

3
krs013

Éditez /etc/systemd/logind.conf et définissez KillUserProcesses=yes

Notez que cela rompt les programmes en arrière-plan, screen, tmux et similaires ...

Cette question est ici plus en détail. Je trouve inutile de définir un nouveau service systemd (ou plus précisément, pas le comportement souhaité, car il est appelé en tant que point d'arrêt, pas lorsque la session utilisateur se termine).

https://unix.stackexchange.com/questions/251902/ecryptfs-auto-umount-does-not-work

3
quadruplebucky

Je le fais avec un script en local

#!/bin/sh
#

while true; do
    if [ ! -d /run/user/1000 ]; then
        if [ -f /home/momo/.mounted ]; then
            umount /home/harry
        fi      
    fi

    if [ ! -d /run/user/1001 ]; then
        if [ -f /home/vm/.mounted ]; then
            umount /home/maud
        fi
    fi

    sleep 10
done
exit 0
2
walter wunsch

Je fais des recherches sur ce problème depuis un certain temps, c’est-à-dire que le système de fichiers non chiffré reste monté après la déconnexion de l’utilisateur.

J'ai utilisé "utilisateur ecryptfs-migrate-home -u" pour créer un montage. suivi les instructions et tout fonctionne sauf pas de démontage automatique à la déconnexion.

J'ai comparé les fichiers de configuration de /etc/pam.d/ à la documentation de pam_ecryptfs et trouvé quelques différences. ecryptfs figurait dans 4 des fichiers de configuration pam.d alors que la documentation pam_ecryptfs indique que 2 fichiers seulement doivent/devraient/supporter ecryptfs, par exemple,

   /etc/pam.d/common-auth:
              auth    required        pam_ecryptfs.so unwrap
   /etc/pam.d/common-session:
              session optional        pam_ecryptfs.so unwrap

J'ai donc commenté les 2 autres instances, redémarré et tout a fonctionné, montage automatique à la connexion et démontage automatique à la déconnexion pour les connexions à la fois graphique et à la console. (J'ai utilisé d'autres tty pour vérifier à partir du compte root)

Ceci est sur 18.04 Lubuntu sur ordinateur portable, ordinateur de bureau et invité virtualbox (hôte Windows).

Je suis intéressé par d'autres expériences.

edit_1: amélioration du libellé. edit_2: bureau ajouté et VB résultats du test.

2
redrock