ecryptfs: auto-umount no funciona

9

He configurado un directorio de inicio cifrado para el usuario piranha3:

root@raspberrypi:~# ecryptfs-verify -u piranha3 -h
INFO: [/home/piranha3/.ecryptfs] exists
INFO: [/home/piranha3/.ecryptfs/Private.sig] exists
INFO: [/home/piranha3/.ecryptfs/Private.sig] contains [2] signatures
INFO: [/home/piranha3/.ecryptfs/Private.mnt] exists
INFO: [/home/piranha3] is a directory
INFO: [/home/piranha3/.ecryptfs/auto-mount] Automount is set
INFO: Mount point [/home/piranha3] is the user's home
INFO: Ownership [piranha3] of mount point [/home/piranha3] is correct
INFO: Configuration valid

Pero después de que el directorio de desconexiones de piranha3 no esté desmontado

root@raspberrypi:~# mount | grep ecryptfs
/home/.ecryptfs/piranha3/.Private on /home/piranha3 type ecryptfs (rw,nosuid,nodev,relatime,ecryptfs_fnek_sig=729061d7fa17b3a4,ecryptfs_sig=eb5ec4d9c13e2d74,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_unlink_sigs)

salida de lsof:

lsof: WARNING: can't stat() cifs file system /media/cifs
      Output information may be incomplete.
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.

Información del sistema:

root@raspberrypi:~# dpkg -l ecryptfs-utils
Deseado=desconocido(U)/Instalar/eliminaR/Purgar/retener(H)
| Estado=No/Inst/ficheros-Conf/desempaqUetado/medio-conF/medio-inst(H)/espera-disparo(W)/pendienTe-disparo
|/ Err?=(ninguno)/requiere-Reinst (Estado,Err: mayúsc.=malo)
||/ Nombre                   Versión           Arquitectura      Descripción
+++-========================-=================-=================-======================================================
ii  ecryptfs-utils           103-5             armhf             ecryptfs cryptographic filesystem (utilities)
root@raspberrypi:~# uname -a
Linux raspberrypi 4.1.13-v7+ #826 SMP PREEMPT Fri Nov 13 20:19:03 GMT 2015 armv7l GNU/Linux

Y finalmente sobre PAM:

root@raspberrypi:~# grep -r ecryptfs /etc/pam.d
/etc/pam.d/common-session:session       optional        pam_ecryptfs.so unwrap
/etc/pam.d/common-password:password     optional        pam_ecryptfs.so 
/etc/pam.d/common-auth:auth     optional        pam_ecryptfs.so unwrap
/etc/pam.d/common-session-noninteractive:session        optional        pam_ecryptfs.so unwrap

¿Por qué no se desmonta / home / directorio?

sebelk
fuente
La ecryptfs-verifyopción -pes para un directorio privado que no sea HOME, pruebe la -h, --homeopción en su lugar. ¿Y funcionan correctamente los hogares encriptados para otros usuarios, se montan al iniciar sesión y desmontan al cerrar sesión, etc.? Creado con adduser --encrypt-homeo con ecryptfs-migrate-home?
Xen2050
He editado en consecuencia.
sebelk
1
@sebelk Estoy enfrentando el mismo problema con mi carpeta de inicio creada ecryptfs-migrate-homeen archlinux. Seguí las instrucciones de la wiki para el montaje automático. Allí se menciona que hay un error systemd, se archiva un informe de error y se proporciona una solución, pero estoy lejos de ser un especialista en sistemas.
cjorssen
Creo que encontré una manera que me funciona en Ubuntu 17.04 - Información a continuación en la sección de respuestas.
Mad Man
Publiqué la respuesta en otro hilo. Encontré una solución a este problema en 16.04 y 18.04. enlace a otra publicación.
redrock

Respuestas:

1

Según un usuario de askubuntu, es un error conocido: https://askubuntu.com/a/932650 . No sé si es verdad o no, pero encontré una solución.

Agregué al final de mi .bash_logout (por ejemplo, vim ~ / .bash_logout) la siguiente línea:

(sleep 10; ecryptfs-umount-private) &

Cuando cierro sesión (conexión ssh), veo el mensaje "Sesiones aún abiertas, sin desmontar", pero mi directorio de inicio se desmonta / encripta de todos modos.

scotty86
fuente
0

Abra una terminal y siga estas instrucciones.

cd /etc/systemd/system
sudo nano ecryptfs-umount-private.service

Ingrese el contenido a continuación en el archivo.

[Unit]
Description=Umount Private directory
Before=systemd-exit.service
DefaultDependencies=no
Requires=shutdown.target
After=shutdown.target

[Service]
Type=oneshot
ExecStart=/usr/bin/ecryptfs-umount-private

[Install]
WantedBy=exit.target

Presione Ctrl+ X, luego presione la tecla yy Enterpara guardar el archivo.

sudo systemctl daemon-reload
sudo systemctl enable ecryptfs-umount-private.service

He probado esto y está funcionando para mí.

Otra cosa que hice que puede o no ayudar es editar /etc/systemd/logind.confy cambiar la línea #KillUserProcesses=noa KillUserProcesses=yes.

PD: probé esto al cambiar de usuario, cerrar sesión, volver a iniciar sesión en la cuenta principal y luego probar con root con ls /home/folder name. Noté un pequeño retraso, sin embargo, esto funcionó para mí en Ubuntu 17.04 con Gnome.

Hombre loco
fuente