utilizando localizar en una partición encriptada

25

Seleccioné / home / para encriptar cuando estaba instalando Ubuntu. Ahora, ¿es posible hacer que locatefuncione con una partición encriptada como esta?

m33lky
fuente
Tengo el mismo problema: localizar buscará archivos fuera de mi partición de inicio cifrada, pero no puede verlos dentro de ella. (Para ser sincero, ¡desearía nunca haberlo cifrado cuando instalé Ubuntu en primer lugar, con todos los problemas que he tenido con él!) ¿Puede alguien explicarme en pasos claros lo que necesito hacer para poder hacer que localizar pueda indexar datos en una partición de inicio encriptada. Soy un novato relativo, así que no es obvio qué hacer al leer lo anterior :).
44
Tu /homees un sistema de archivos virtual (ecryptfs). Está "montado" como una partición accesible cuando inicia sesión. Verifique su /etc/updatedb.conf y a) elimine ecryptfs de los sistemas de archivos ignorados (PRUNEFS) b) cambie a PRUNE_BIND_MOUNTS = "no"
m33lky
44
Después de eso, puede ejecutar sudo updatedbpara indexar nuevos archivos.
m33lky
tener en cuenta que la base de datos a localizar los usos vidas en el espacio sin cifrar, posiblemente comprometer su cifrado por los nombres de archivo que dan a conocer
Florian Heinle

Respuestas:

29

Ambos "ejecuto localizar (actualizadob) cuando estoy conectado", como se mencionó anteriormente, y mantengo mi parte de la base de datos de localización en mi $ HOME cifrado.

export LOCATE_PATH="$HOME/var/mlocate.db"

y luego indizo los archivos $HOMEcon

updatedb -l 0 -o $HOME/var/mlocate.db -U $HOME

Ahora tengo un índice completo de $HOMEpero la base de datos no es visible a menos que $HOMEesté montada y descifrada.

Waltinator
fuente
Esa es una buena solución. ¿Cómo migraste tu db allí?
m33lky
44
No lo hice Acabo de generar una base de datos para mi árbol de inicio (encriptado), con updatedb -l 0 -o $HOME/var/mlocate.db $HOME. man locatedice que buscará la base de datos predeterminada ( /var/lib/mlocate/mlocate.db), luego la lista de bases de datos en $LOCATE_PATH.
waltinator
3
No "elimine ecryptfsde la PRUNEFSdefinición en /etc/updatedb.conf. Cuando está conectado, /home/$USERse descifra, pero los archivos y nombres encriptados /home/$USER/.Privatedeben ignorarse. Cuando $HOMEno está montado, otros no tendrán acceso a la base de datos ni a la (sin cifrar) ) archivos de nombres de archivo.
waltinator
2
updatedb -l 0 -o $HOME/var/mlocate.db $HOMEdebe faltar -Udebería serupdatedb -l 0 -o $HOME/var/mlocate.db -U $HOME
destan 22/03/12
2
Lo malo es que @destin también extendí mi método para indexar medios extraíbles, utilizando bash_path_funcs de Steve Collyer ( linuxjournal.com/article/3645 ). Con el medio extraíble montado (como /media/_name_) lo hago updatedb -l 0 -o ~/var/mlocate/_name_.db -U /media/_name_ en mi .bashrc, tengo export LOCATE_PATH="$HOME/var/mlocate/mlocate.db for i in $HOME/var/mlocate/*.db ; do addpath -p LOCATE_PATH $i done uniqpath -p LOCATE_PATH y locatepuedo mostrarme nombres de archivo incluso cuando el medio NO está montado.
waltinator
3

¿Qué hay de ejecutar updatedb cuando su sistema de archivos se descifra e intenta hacer coincidir las variables de entorno para leerlo / escribirlo?

Después de leer la página del manual, agregue dos variables a su archivo BASH RC.

man locate
echo "export LOCATE_PATH=$HOME/var/lib/mlocate/mlocate.db:$LOCATE_PATH" >> ~/.bashrc
echo "export DBPATH=$HOME/var/lib/mlocate/mlocate.db:$DBPATH" >> ~/.bashrc

Cree el directorio especificado anteriormente y agregue $ username al grupo mlocate.

mkdir -p ~/var/lib/mlocate/
sudo usermod -a -G mlocate $username

Cierre sesión y vuelva a iniciar sesión para contar su usuario en el grupo mlocate y obtener las nuevas variables de entorno. Ahora cuando corres,

updatedb -o $LOCATE_PATH

¿están los archivos descifrados en una base de datos de localización ahora? O, ¿qué hiciste para que funcione o mejor?

También es posible que desee agregar updatedb al crontab del usuario. Primer intento:

crontab -e

Y agregue la siguiente línea:

0 12 * * * updatedb -o $HOME/var/locate
mgajda
fuente
Ver mi comentario a Martin. Estoy tratando de entender si hay consideraciones de seguridad o si Ubuntu no pasó por alto la configuración adecuada.
m33lky
Debido a que ecryptfs aparece en la variable PRUNEFS en /etc/updatedb.conf, probablemente también necesite usar --prunefs "nfs". Esta parece ser una buena solución porque almacena y actualiza el índice a por usuario desde el perfil de usuario.
João Pinto
@ m33lky El problema es este: ha solicitado cifrar su homedir, para que nadie (¡ni siquiera root!) pueda leerlo sin la contraseña. La solución inteligente es una base de datos de localización por usuario. La solución fácil para una máquina de un solo usuario es eliminar ecryptfsy escanear cuando haya iniciado sesión. En el futuro, tal vez locatepodría agregar resultados de la base de datos global y la base de datos de inicio del usuario actual.
joeytwiddle
2

Realmente no es posible actualizar el índice de la base de datos sin haber iniciado sesión. Debe iniciar sesión y ejecutar el comando updatedb.

Verifique su configuración en /etc/updatedb.conf. Eliminar ecryptfsde PRUNEFSy probablemente /home/.ecryptfsde PRUNEPATHS. No te olvides de correr sudo updatedbdespués.

Martin Owens -doctormo-
fuente
1
actualizado b.conf ciruelas pasas ecryptfs. Además, PRUNE_BIND_MOUNTS = "yes". Estoy tratando de entender el razonamiento detrás de tales valores por defecto ya que no es fácil de usar para tener resultados de / home falta en sus búsquedas :)
m33lky
Supongo que la funcionalidad para el hogar es tener un indexador por usuario ... pero eso es especulación.
Martin Owens -doctormo-
Sin cifrado / home se indexan, por lo que espero que el mismo comportamiento ...
m33lky
1
Estaba describiendo la situación desde la perspectiva de la interfaz de usuario.
m33lky
2
Si encriptaste todo el disco, esto no sería un problema, si solo tuvieras una encriptación doméstica, entonces debes comenzar a indexar por usuario y usar cada encriptación individual ... de hecho, también podrías esconder el índice de inicio en la carpeta de inicio del usuario ... todo lo cual es un gran desarrollo y costo para algo que la mayoría de los usuarios nunca ven. Informe el error contra el proyecto de localización de herramientas de base de datos.
Martin Owens -doctormo-