¿Cómo monto un directorio encriptado / home en otra máquina Ubuntu?

38

He hecho algo un poco, bueno, extraño. Instalé Ubuntu 12.04 directamente en una memoria USB, encriptando el directorio / home como se le dio la opción durante la instalación. El sistema de archivos es btrfs, creo.

Ahora he pegado esto en mi computadora con Ubuntu, y me gustaría copiar un archivo en la memoria USB. ¿Cómo puedo montar el directorio de inicio encriptado para poder copiar archivos en él?

Naftuli Kay
fuente

Respuestas:

36

Para obtener acceso a los datos en su dispositivo y copiar archivos en él, necesita montar el eCryptfs. Esto implica varios pasos:

Primero debes insertar tu palo. Si Ubuntu no lo monta automáticamente (generalmente lo hace), debe montarlo.

Ahora deberías encontrar un directorio llamado .Private. Si realizó una instalación predeterminada, este directorio debería ubicarse /media/DISK/home/.ecryptfs/USERNAME/.Private. En este ejemplo, se DISKencuentra el directorio donde está montado su dispositivo y USERNAMEes el nombre del usuario que ingresó en la instalación. Si no puede encontrarlo, abra una terminal e ingrese

sudo find /media -type d -name .Private

Asumo en los siguientes pasos que el directorio está en /media/DISK/home/.ecryptfs/USERNAME/.Private.

Necesita la contraseña de montaje . Esto es diferente de su contraseña de inicio de sesión. Ingrese el siguiente comando en una terminal:

ecryptfs-unwrap-passphrase /media/DISK/home/.ecryptfs/USERNAME/.ecryptfs/wrapped-passphrase

Debe ingresar la contraseña de inicio de sesión desde la instalación de su USB-Ubuntu ( no es su contraseña habitual). El comando genera una frase de contraseña. Escriba esto o cópielo en un archivo.

La contraseña le permite desbloquear el directorio. Debes hacerlo en dos pasos:

> sudo ecryptfs-add-passphrase --fnek
Inserted auth tok with sig [123456789abcdef0] into the user session keyring
> sudo mount -t ecryptfs /media/DISK/home/.ecryptfs/USERNAME/.Private /media/myUSB

El primer comando agrega su frase de contraseña al conjunto de claves del núcleo y el segundo intenta montar su .Privateen el directorio /media/myUSB. Si el café con leche no existe, primero debe crearlo:

sudo mkdir /media/myUSB

El mountcomando le pedirá nuevamente la contraseña de inicio de sesión . Luego pedirá un montón de cosas.

  • Acepte los valores predeterminados de cifrado y tamaño de clave ( aesy 16).
  • Tipo nde texto sin formato.
  • Escriba ypara el cifrado de nombre de archivo.
  • Lo último es la clave de cifrado de nombre de archivo (FNEK). Mire la salida del ecryptfs-add-passphrase --fnekcomando que acaba de escribir. Hay dos líneas que comienzan con Inserted auth tok …. Inserte el valor entre corchetes de la segunda salida ( 123456789abcdef0).

Ahora puede acceder a los archivos /media/myUSBy copiarlos desde y hacia el directorio o subdirectorios.

Una gran parte de mi descripción proviene del " método de Live CD para abrir un directorio de inicio encriptado ".

qbi
fuente
44
Gracias. Hubo tres cosas que me sorprendieron que podrían ayudar a otros: 1) Necesitaba sudo ecryptfs-add-passphrase --fnek, tenga en cuenta el sudo 2) ecryptfs-add-passphrasequiere la frase hexadecimal sin envolver pero mounttoma la frase de contraseña de "inicio de sesión" 3) Tenía que rehacer ecryptfs-add-passphrasedespués de un montaje
bsb
Gracias, esto es maravilloso! También resolvió mi problema :) ¿Hay alguna forma de modificar el comando de montaje para que también retenga al usuario original (uid) y al grupo?
Ossi Viljakainen
47

Puedes usar ecryptfs-recover-private.

ecryptfs-recover-private /media/<UUID>/home/.ecryptfs/<USERNAME>/.Private

Solicitará la contraseña de montaje, desbloqueará la frase de contraseña envuelta y montará el directorio en modo de solo lectura /tmp/con un solo comando. Use la bandera --rwpara montar el sistema de archivos cifrados como lectura y escritura.

Puede consultar la página del manual para obtener más información.

Seppo Erviälä
fuente
77
No estoy seguro de por qué no se acepta esta respuesta. Es MUCHO más rápido.
Kai
2
@Kai Porque esta respuesta llegó tres años después ...
mook765
3
Sin embargo, cuando ejecuto el comando, insiste en que lo ejecute comoroot
Seanny123
44
La bandera es --rwcon doble guión. en caso de que obtenga un error de montaje (2), ejecute el sudo ecryptfs-managerprimero e inmediatamente salga (4). luego repita el
comando de
3
Jaja. No importa mi sugerencia previa. Es mejor hacer lo que dijo ulkas : correr sudo ecryptfs-managery seleccionar 4. Exitsin hacer nada más. Esto tiene el sorprendente efecto secundario de hacer que las cosas funcionen.
nobar
4

Tuve un problema similar y terminé aquí. Estaba migrando mi sistema a otro disco duro y tengo el mismo usuario con inicio encriptado tanto en el sistema antiguo como en el nuevo.

Lo intenté

ecryptfs-recover-private /media/old_disk/home/my_name/.Private

pero ese directorio era de hecho un enlace simbólico a

/home/.ecryptfs/my_name/.Private/

El directorio de destino existía, pero apuntaba a .Private en mi nuevo disco .

El comando correcto debe ser:

ecryptfs-recovery-private /media/old_disk/home/.ecryptfs/my_name/.Private

tal vez ecryptfs-recovery-private debería mostrar una advertencia si detecta este patrón. Parece un error común.

Piotr
fuente
Oh hombre ... gracias! He pasado mucho tiempo en esto. Entonces pensé que lo tenía, solo para darme cuenta, que realmente estaba montando mi nuevo disco ... Gracias, esto funcionó a la perfección.
Quapka
0

La frase de contraseña no funcionó. Necesitaba ejecutar:

ecryptfs-unwrap-passphrase /media/DISK/home/.ecryptfs/USERNAME/.ecryptfs/wrapped-passphrase 
usuario307400
fuente
2
La respuesta aceptada se ha corregido para reflejar esto ahora.
mwfearnley