Recuperar los archivos y carpetas cifradas con eCryptfs

Me metí en un problema enorme, cambie mi y no la recordé 😛 el problema es que mi /home esta cifrado/encriptado, resolver la clave de encriptación me llevaría 120 años y más porque es una , seguí el tutorial para restaurar mi contraseña, pero claro, fue inútil; ejecutar el comando encryptfs-mount-private fue una perdida de tiempo. Por suerte mi passphrase siempre la tuve a la mano y después de buscar por toda la red me tope con la respuesta, una respuesta que fue complicada de conseguir y sin asumir perdida alguna [después encontré otro tutorial para backup]. Yo olvide mi contraseña pero es muy probable que hayas hecho una actualización limpia y mientras conservabas tu /home.

Solución 1

Al final esta fue la solución efectiva. Antes de loguearte gráficamente saltamos directamente a una con <Ctrl>+<Alt>+<F2> por ejemplo y nos logueamos, cambiamos a una carpeta oculta y ejecutamos un comando:

cd $HOME/.ecryptfs/
ecryptfs-wrap-passphrase wrapped-passphrase

Nos solicitará nuestra passphrase que guardamos terminar nuestra instalación, luego introducimos nuestra contraseña de usuario, sino recuerdas tu contraseña sigue este tutorial. Basta con reiniciar y loguearnos normalmente.

Solución 2

Vamos a trabajar en la consola por lo que deberías imprimir estas instrucciones, este tuto es para realizar un . Ahora nos aseguramos de tener las herramientas necesarias para trabajar.

sudo apt-get install ecryptfs-utils

Creamos el directorio donde el backup será abierto:
cd /mnt
sudo mkdir Oldhome

Creamos un enlace simbólico del backup al antiguo archivo .Private:

sudo ln -s /home/{tu_usuario}/.Private OldPrivate

Ahora obtendremos dos claves adicionales a partir de la passphrase que guardamos al instalar .
sudo ecryptfs-add-passphrase --fnek
Passphrase:

Introduce la frase que nos dio recién instalamos Ubuntu, la salida será similar a esta:
Inserted auth tok with sig [xxxxxxxxxxxxxxx] into the user session keyring
Inserted auth tok with sig [yyyyyyyyyyyyyyyy] into the user session keyring

Ahora guarda la segunda contraseña [yyyyyyyyyyyyyyyy] y estamos listos para comenzar el backup de nuestro /home perdido, escribimos:

sudo mount -t ecryptfs OldPrivate OldHome/

Y respondemos de acuerdo a esta salida que basicamente es: [nuestra-passphrase], Enter, Enter, Enter, y, [yyyyyyyyyyyyyyyy], yes, no.
Passphrase:
Select cipher:
1) aes: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
2) blowfish: blocksize = 16; min keysize = 16; max keysize = 56 (not loaded)
3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24 (not loaded)
4) twofish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
5) cast6: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
6) cast5: blocksize = 8; min keysize = 5; max keysize = 16 (not loaded)
Selection [aes]:
Select key bytes:
1) 16
2) 32
3) 24
Selection [16]:
Enable plaintext passthrough (y/n) [n]:
Enable filename encryption (y/n) [n]: y
Filename Encryption Key (FNEK) Signature [xxxxxxxxxxxxxxx]: yyyyyyyyyyyyyyyy
Attempting to mount with the following options:
ecryptfs_unlink_sigs
ecryptfs_fnek_sig=yyyyyyyyyyyyyyyy
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=xxxxxxxxxxxxxxx
WARNING: Based on the contents of [/root/.ecryptfs/sig-cache.txt],
it looks like you have never mounted with this key
before. This could mean that you have typed your
passphrase wrong.
Would you like to proceed with the mount (yes/no)? : yes
Would you like to append sig [df3c98e4c85db0c5] to
[/root/.ecryptfs/sig-cache.txt]
in order to avoid this warning in the future (yes/no)? : no
Not adding sig to user sig cache file; continuing with mount.
Mounted eCryptfs

Ahora ya tenemos nuestros archivos y carpetas montados en /mnt/Oldhome, creamos una carpeta en el /home:

sudo mkdir /home/temporal

Y procedemos a copiar todos nuestros ficheros a la carpeta creada, así recuperamos el contenido completamente:

cp -r /mnt/Oldhome/* /home/temporal

Ahora ya tienes a respaldadas todas tus carpetas y documentos, puedes copiar la información por ejemplo a un Pendrive o a otro ordenador.

Atención

Desde que arranco este post casi la totalidad de comentarios confunden su contraseña con la passphrase. La passphrase tiene una longitud de 16 digitos en todos los casos, si no la guardaste no hay forma de recuperarla, lo siento pero sin ella no hay solución. Así de seguro es nuestro sistema.

Comparte con otros

32 pensamientos en “Recuperar los archivos y carpetas cifradas con eCryptfs”

  1. Excelente trabajo! Y muy útil 😉
    Es cosa mía o los contenidos de este blog mejoran con el tiempo?? Como el vino jejeje…
    Un saludo y sigue así, en serio, gran trabajo xD

  2. despues de poner en la linea “in order to avoid this warning in the future (yes/no)? : yes”

    me manda este mensaje Error mounting eCryptfs: [-2] No such file or directory
    Check your system logs; visit

    revise la carpeta OldPrivate y ya estan todos los archivos pero siguen encriptados y en /home/temporal no me crea nada

    echanme una manita ya estoy de puntitas Gracias

      1. lo que paso fue que mi inicio de sesion me pide contraseña de usuario y la quize quitar por medio de Sistema->Administracion->Pantalla de Acceso->Acceder como->User->10segundos, reinicie y comenzo el problema.
        me iniciaba pero daba el problema de /home/user/ICauthority o algo así, de alguna manera logre que y ano lo diera y puedo entrar como este user, pero dentro de /home/user/ sigo teniendo Access Your Private Data, le doy doble clic y me manda la terminal con Passphrase:, lo pongo y me dá:
        Enter your login passphrase:
        Error: Unwrapping passphrase and inserting into the user session keyring failed [-5]
        Info: Check the system log for more information from libecryptfs
        ERROR: Your passphrase is incorrect
        Enter your login passphrase:,
        He intentado cambiar el Passphrase como indicas, pero nada resulta

        1. Lamento decirte que la Passphrase no se puede cambiar, debes tenerla para recuperar tu partición.

          La contraseña de usuario te permite iniciar sesión en el sistema, la passphrase te permite accesar a la carpeta cifrada en tu disco duro. Sin passphrase no hay acceso a tu carpeta. Lo siento.

  3. Hola, necesito ayuda con el siguiente problema. Instale Ubuntu 9.10, cuando me pregunto se queria cifrar la carpeta personal, le puse que si, luego todo funciono muy bien, dentro de la carpeta personal puse muchos archivos. Luego tuve la brillante idea de querer cambiar la clave de usuario, y cuando la reinicie por lo que entiendo no puedo entrar a la carpeta personal y queda trabada la parte grafica. Instale en otra particion otra vez ubuntu, veo los archivos pero no la carpeta personal, solo tiene dos links: home/cristian/Access-Your-Private-Data.desktop y un readme. segun lo poco que entiendo cuando le hago click a Access-Your-Private-Data.desktop me tendria que pedir la clave que supongo sera la misma que passphrase. Pero como es de otra particion no funciona, necesito que me den una idea, gracias

    1. Importante: La passphrase consta de 16 dígitos aleatorios que se generan una vez realizada la instalación, para realizar cualquier de las dos soluciones en este post necesitas tener tu passphrase. Si no la tienes es prácticamente imposible.

      1. Entonces no se cual es la passphrase, solo tengo el pass del usuario, todo andaba bien pero ahora cuando arranca me logeo en modo grafico y salen los soguientes errores:

        Coul not update ICEauthority file /home/usuario/.ICEauthority

        Luego
        Hay un problema con la configuracion del servidor: (/usr/lib/libgconf 2-4/gconf-sanity-chek-2 salio en el estado 256)

        y por ultimo
        Nautilus no puede crear las siguintes carpetas requeridas: /home/usuario/Desktop /home/usuario/.Nautilus

        y luego de esto queda la pantalla sin mostar ninguna opcion, solo la puedo apagar con control + alt + del

        ¿alguna sugerencia?

        1. Sin la passphrase no se puede hacer nada, lo siento. Descifrar una carpeta tomaría como 120 años, sin embargo aún puedes crear un nuevo usuario y así continuar sin reinstalar nada.

          En un shell ejecuta: adduser y sigue las instrucciones.

          1. gracias por tu tiempo, y ultima pregunta, por lo que entiendo y lo revize desparecio de mi carpeta personal el archivo .ICEauthority supongo que ahi estan los datos para desencriptar automaticamente la carpeta sin pedir la passphrase. Es así?

            1. Lo que hace eCryptfs es encriptar por un lado los directorios y por el otro los archivos. Asi que lo que te vas a encontrar con tu /home/usuario es un enlace duro a una carpeta oculta en /home/.ecryptfs donde ahí van a estar los verdaderos archivos.

              Los datos para descifrar estan en la carpeta antes mencionada.

  4. he seguido al pie de la letra cada paso pero al parecer mi passphrase no es correcta…
    ¿Habria alguna forma de visualizar o recuperar la passphrase?
    desde ya gracias!!!!!

  5. hola! buen dia, pues les escribo pra pedirles un favorsote, lo que pasa es que tambien he tenido problemas con la particion encriptada. Lo que recuerdo es que al fin de la instalación ubuntu 10.4 me preguntó una clave y yo puse la misma que uso para todo, le di enter y me arrojo una linea:
    passphrase: 7a6863fadfbacdf34c8eefd5efaabb30 despues aparecia enter y cerre la consola.

    Ahora no se que hacer tecleo esta clave y me dice que es incorrecta. Mediante ecryptfs-mount-private puedo entrar a la carpeta cifrada y ver los archivos, incluso puedo abrirlos.
    Sin embargo, tampoco se cargan los paneles.

    Es posible aun recuperar los archivos? les agradezco mucho su ayuda e información.
    un saludo y buen vibraa!!!

    1. Pues me confundiste, ya que dices que puedes abrir los archivos y luego preguntas como recuperarlos. Si quieres ver tus archivos puedes copiar y pegar.

      La passphrase solo es para tareas administrativas, tal como se usa en este tutorial. La contraseña que te pide al iniciar sesión es la misma que tu usas para todo (como mencionas).

      Si no puedes accesar a tus datos intenta con alguno de las dos opciones de este tutorial. Si cambiaste tu contraseña y ahora no te deja accesar a tus archivos sigue la opción 2.

  6. Hola gracias por la respuesta, la verdad es que solo puedo ver los archivos cuando presion alt + f2 y luego ejecutar junto con el archivo. Despues me aparecen los archivos pero solo los puedo ver, cuando elijo abrir uno se cierra y ya no hace nada. Intente la solucion 1 pero no me reconoce el comando. Intentaré la 2 haber que pasa.
    Tambien pongo la contraseña de usuario y nada se cierra la terminal y no hace nada.

    Te agradezco mucho tu ayuda un saludo!!!1

  7. Asunto resuelto, solo le dije al sistema que preguntara mi contaseña antes de entrar y vuala! jeje
    de todas formas agradezco su apoyo, buen día!!

  8. Hola:

    Os cuento mi problema a ver si alguien puede ayudarme.

    Por razones, sobre todo de desconocimiento, en su momento no hice una copia del fichero wrapped-passphrase.

    La cuestión es que cambie la “passphrase” con ecryptfs-wrap-passphrase, posteriormente he vuelto a la antigua, con la que cifre en su momento la carpeta del “home”. Pero ahora aunque el texto de la passphrase es el mismo que inicialmente ha cambiado la signatura de las 16 cifras y letras del “fekek” y el “fnek” y aunque consigo montar el “home” no se “desencripta”.

    ¿Esto tiene arreglo o doy por perdidos los 31 Gb de datos que tenía en mi “home”?

    Saludos.

  9. saludos, buen y muy importante tuto…

    necesito de tu ayuda…

    te cuento mi problema hace muchos meses tuve que reinstalar sistema desde 0, tenia mi home en una partición aparte, la cosa es que reinstale ubuntu 9.04 o 9.10 [no recuerdo cual era] conservando mi home y al momento de seleccionar la opción de encriptar la capeta personal le puse que si..y use la misma contraseña para todo que es de 8 dígitos, paso el tiempo intente e intente recuperar los 39 gb de mi ex home y aun no puedo, he intentado las formas que dejas aqui y no resulta, he copiado el .ecryptfc de mi antiguo home al actual y hacer lo de tu tuto y tampoco resulta nada…

    esto me sale en la terminal

    antonio@antonio-Compaq-Presario-C700-Notebook-PC:~$ sudo mount -t ecryptfs /home/antonio/.Private /home/antonio/Private
    Passphrase:
    Select cipher:
    1) aes: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
    2) blowfish: blocksize = 16; min keysize = 16; max keysize = 56 (not loaded)
    3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24 (not loaded)
    4) twofish: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
    5) cast6: blocksize = 16; min keysize = 16; max keysize = 32 (not loaded)
    6) cast5: blocksize = 8; min keysize = 5; max keysize = 16 (not loaded)
    Selection [aes]:
    Select key bytes:
    1) 16
    2) 32
    3) 24
    Selection [16]:
    Enable plaintext passthrough (y/n) [n]: n
    Enable filename encryption (y/n) [n]: y
    Filename Encryption Key (FNEK) Signature [fc629af721dfbdfa]: fc629af721dfbdfa
    Attempting to mount with the following options:
    ecryptfs_unlink_sigs
    ecryptfs_fnek_sig=fc629af721dfbdfa
    ecryptfs_key_bytes=16
    ecryptfs_cipher=aes
    ecryptfs_sig=fc629af721dfbdfa
    WARNING: Based on the contents of [/root/.ecryptfs/sig-cache.txt],
    it looks like you have never mounted with this key
    before. This could mean that you have typed your
    passphrase wrong.

    Would you like to proceed with the mount (yes/no)? : yes
    Would you like to append sig [fc629af721dfbdfa] to
    [/root/.ecryptfs/sig-cache.txt]
    in order to avoid this warning in the future (yes/no)? : no
    Not adding sig to user sig cache file; continuing with mount.
    Error mounting eCryptfs: [-2] No such file or directory
    Check your system logs; visit

    por favor te agradecería enormemente tu ayuda…

    desde ya muchas gracias

    1. una aclaracion sorry…

      al momento de poner la segunda alternativa de digitos en Filename Encryption Key (FNEK) Signature [fc629af721dfbdfa]: segundo valor despues del comando [ sudo ecryptfs-add-passphrase –fnek
      ]

      me da el mismo resultado..

      saludos

    2. Es muy importante aclarar que tu contraseña es distinta de la passphrase. Si no almacenaste tu passphrase tendras que aceptar que ya perdiste tu información.

      Por si aun no me comprendes, en tu caso la contraseña es de 8 digitos. Todas las passphrase tienen 16 digitos de longitud.

      1. gracias por responder…

        mm lo primero es que despues de la instalacion de ubuntu cuando se encripto el home, nunca me arrojo una contraseña, no me mostro nada en pantalla…almenos na de 17 digitos

        mira otro antecedente que quizas ayude…
        hace algun tiempo “cambie” la passphrase y esto me arrojo la terminal..

        antonio@antonio-laptop:~$ sudo aptitude install ecryptfs-utils
        [sudo] password for antonio:
        Leyendo lista de paquetes… Hecho
        Creando árbol de dependencias
        Leyendo la información de estado… Hecho
        Leyendo la información de estado extendido
        Inicializando el estado de los paquetes… Hecho
        Se instalarán los siguiente paquetes NUEVOS:
        ecryptfs-utils keyutils{a} libecryptfs0{a}
        0 paquetes actualizados, 3 nuevos instalados, 0 para eliminar y 17 sin actualizar.
        Necesito descargar 201kB de ficheros. Después de desempaquetar se usarán 864kB.
        ¿Quiere continuar? [Y/n/?] y
        Escribiendo información de estado extendido… Hecho
        Des:1 http://cl.archive.ubuntu.com karmic/main libecryptfs0 81-0ubuntu3 [71,1kB]
        Des:2 http://cl.archive.ubuntu.com karmic/main keyutils 1.2-10 [27,0kB]
        Des:3 http://cl.archive.ubuntu.com karmic/main ecryptfs-utils 81-0ubuntu3 [103kB]
        Descargados 201kB en 1s (176kB/s).
        Seleccionando el paquete libecryptfs0 previamente no seleccionado.
        (Leyendo la base de datos … 00%
        202340 ficheros y directorios instalados actualmente.)
        Desempaquetando libecryptfs0 (de …/libecryptfs0_81-0ubuntu3_i386.deb) …
        Seleccionando el paquete keyutils previamente no seleccionado.
        Desempaquetando keyutils (de …/keyutils_1.2-10_i386.deb) …
        Seleccionando el paquete ecryptfs-utils previamente no seleccionado.
        Desempaquetando ecryptfs-utils (de …/ecryptfs-utils_81-0ubuntu3_i386.deb) …
        Procesando disparadores para man-db …
        Configurando libecryptfs0 (81-0ubuntu3) …

        Configurando keyutils (1.2-10) …
        Configurando ecryptfs-utils (81-0ubuntu3) …

        Procesando disparadores para libc-bin …
        ldconfig deferred processing now taking place
        Leyendo lista de paquetes… Hecho
        Creando árbol de dependencias
        Leyendo la información de estado… Hecho
        Leyendo la información de estado extendido
        Inicializando el estado de los paquetes… Hecho
        Escribiendo información de estado extendido… Hecho

        antonio@antonio-laptop:~$ ecryptfs-setup-private
        Enter your login passphrase: xxxxxxxx no la pongo aki xD
        Enter your mount passphrase [leave blank to generate one]: skinhead
        Enter your mount passphrase (again): xxxxxxxx no la pongo aki xD

        ************************************************************************
        YOU SHOULD RECORD YOUR MOUNT PASSPHRASE AND STORE IT IN A SAFE LOCATION.
        ecryptfs-unwrap-passphrase ~/.ecryptfs/wrapped-passphrase
        THIS WILL BE REQUIRED IF YOU NEED TO RECOVER YOUR DATA AT A LATER TIME.
        ************************************************************************

        Done configuring.

        Testing mount/write/umount/read…
        Testing succeeded.

        Logout, and log back in to begin using your encrypted directory.

        antonio@antonio-laptop:~$

        bueno eso era, ojala qeu me puedas ayudar un poco

        saludos y gracias de nuevo

          1. otra ves yo…[perdon por la insistencia]

            alguno de estos archivos me podra servir para recuperar la passphrase ? te dejo unas capturas..

            http://img10.imageshack.us/img10/7688/50812381.png

            http://img143.imageshack.us/img143/618/78239050.png

            http://img684.imageshack.us/img684/6707/68242476.png

            estas capturas las saque entrando como adm en mi particion encryptada..[mira la ruta por si tienes dudas]

            tambien dentro del archivo private.sig [ver captura] me aparecen estos codigos
            e16d5e2806e8b875
            718b8c81ab63dc44

            alguno de ellos podria ser la passphrase, estando en ese archivo private.sig??

            otra ves muchas gracias..

            1. Ahora que lo mencionas, es posible que esas dos claves sean validas, una para los archivos y otra para el nombre de archivo. Entonces deberías probar con el método 2.

              Sin embargo no llegue tan lejos cuando resolvi mi problema, yo tenía a la mano mi passphrase y eso facilito todo.

              Cordialmente te invito a preguntar en https://answers.launchpad.net/~ecryptfs donde se encuentra el equipo de desarrollo y mucha gente con ganas de ayudar (con más conocimientos).

              1. muchas gracias por la paciencia, las respuestas, el tiempo dedicado ….seguiré tu consejo y si no se puede adiós partición xD

                saludos y nuevamente muchas gracias…

  10. Un post fantástico, la verdad que me ha ilusionado poder recuperar toda la información, menos mal que en su día copié la passphrase dichosa.

    Tan sólo, si el autor me lo permite, hacer una aclaración, que para los usuarios noveles ubunteros puedes serviles de ayuda:

    En mi caso no me funcionaba el sistema de arranque e inicié el pc con un live cd de ubuntu. Cuando llegas al paso de hacer un archivo de enlace “OldPrivate” al archivo “.private”, (que es donde están las encriptaciones). No hay que poner literalmente esto:

    sudo ln -s /home/{tu_usuario}/.Private OldPrivate

    Hay que buscar el “.Private” en la unidad donde tenías instalado el Ubuntu, que ahora, corriendo el sistema bajo el live CD, es una unidad montada en /Media. Y además viene encriptada y en archivos ocultos. Por lo que para mi caso fue necesario antes de nada:

    1º Adquirir derechos de root, y activar el navegador de carpetas nautilus:

    sudo su
    nautilus

    2º En la nueva ventana nautilus, entrar en el sistema de ubuntu montado en /media. En mi caso incluso el nombre del sistema estaba encriptado alfanuméricamente.

    3º Clickear en “Ver” y activar Mostrar archivos ocultos. Verás una carpeta que se llama “.ecryptfs”

    4º Seguir dentro de esta carpeta hasta encontrar otra carpeta llamada “.Private”. Clickear. (verás todas las carpetas encriptadas).

    5º Pulsar Ctrl+L para obtener la dirección exacta de la carpeta “.Private” y ahora si que podemos…

    6º Crear un enlace simbólico del backup al antiguo archivo .Private:

    sudo ln -s /direcciondecarpeta.Private OldPrivate

    Y seguir exactamente las instrucciones posteriores.
    Espero que a alguien le sirva.

    Saludos!!!

  11. buenos dias
    lo estoy intentando con un cd live ya que mi problema es que no se me carga el ubuntu, un problema con la grafica que no me deja loguear, consigo hacer casi todo con las direcciones de archivos cambiadas para el livecd de ubuntu pero me acaba poniendo: in order to avoid this warning in the future (yes/no)? : no
    Not adding sig to user sig cache file; continuing with mount.
    Error mounting eCryptfs: [-2] No such file or directory
    Check your system logs; visit
    root@ubuntu:/media/ubuntu/Archivios/Oldhome#.

    y tenia algunos archivos importantes… Cual es el error….

    Gracias de todos modos

    Cordialmente
    Felipe

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *