Montar HFS cifrado en ubuntu

Montar HFS cifrado en ubuntu

Intento montar una partición HFS+ cifrada en Ubuntu.

UnEntrada antiguaDescribió bastante bien cómo hacerlo, pero carece de información sobre cómo usar particiones cifradas.

Lo que encontré hasta ahora es:

  # install required packages
  sudo apt-get install hfsprogs hfsutils hfsplus loop-aes-utils
  # try to mount it
  mount -t hfsplus -o encryption=aes-256 /dev/xyz /mount/xyz

Pero una vez que ejecuto esto me sale el siguiente error:

  Error: Password must be at least 20 characters.

Así que intenté escribirlo dos veces, pero el resultado es esto:

  ioctl: LOOP_SET_STATUS: Invalid argument, requested cipher or key (256 bits) not supported by kernel

¿Alguna sugerencia?

Respuesta1

no puedo montaruna partición HFS+ cifrada en OS X usando mountla opción encryption=aes. La razón es que las particiones y volúmenes HFS+ cifrados utilizan unpropiedadformato.

NiCriptobucleniBucle-AES, cuáles son los métodos de descifrado subyacentes utilizados por mounty encryption, entienden ese formato.

Esto es lo que descubrí:

Cryptoloop puede montar particiones o imágenes de disco cifradas como un único bloque AES (esto se llama modo de clave única, consultehttp://www.tldp.org/HOWTO/html_single/Cryptoloop-HOWTO/#cryptoloop-introduction):

  /dev/sdXX                                                        
  disk image                                                       /dev/loopX
+-----------+                                                    +-------------+
|           |                                                    |             |
|           |                                                    |             |
|           |                                                    | unencrypted |
| AES block | -AES passwd->AES key->decrypt I/O to loop device-> |  partition  |
|           |                                                    |             |
|           |                                                    |             |
|           |                                                    |             |
+-----------+                                                    +-------------+

AES-Loop puede montar particiones o imágenes de disco cifradas de clave única (como arriba) y de clave múltiple:

  /dev/sdXX                                                        
  disk image                                                         /dev/loopX
+------------+                                                    +-------------+
|AES block #1|                                                    |             |
+------------+                                                    |             |
|AES block #2|                                                    | unencrypted |
+------------+ -AES passwd->AES key(s)->decrypt I/O to loop dev-> |  partition  |
|AES block #3|                                                    |             |
+------------+                                                    |             |
|    ...     |                                                    |             |
+------------+                                                    +-------------+

Por otro lado, una partición HFS+ cifrada:

El sucesor de Cryptoloop, dm-crypt, tampoco puede leer HFS+ cifrado.

Pero antes de que se acabe toda esperanza:

En cuanto a los mensajes de error que encontró:

Primer error:

Error: Password must be at least 20 characters.

Sorprendentemente, mountimpone contraseñas largas no sólo para el cifrado sino también paradescifrado, aunque es posible que no tengas control sobre la partición a descifrar. Sólo puedes evitar esta molestia descargando y editando el código fuente y recompilándolo. (Otras distribuciones, como SuSE Linux Enterprise Server (SLES), no tienen esta restricción).

Segundo error:

ioctl: LOOP_SET_STATUS: Invalid argument, requested cipher or key (256 bits) not supported by kernel

Necesita cargar el módulo del kernel Cryptoloop:

$ sudo modprobe cryptoloop

porque aunque instalaste el loop-aes-utilspaqueteno sonutilizando Loop-AES.

Loop-AES utiliza varias herramientas de espacio de usuario modificadas ( ,, y mount, proporcionadas por ) y un módulo de kernel modificado. Las versiones recientes de Ubuntu compilan un módulo no modificado en el kernel:umountlosetupswaponswapoffloop-aes-utilsloop.koloop

    $ cd /usr/src/linux-source-3.2.0/linux-source-3.2.0/drivers/block/
    $ diff -q /tmp/loop.c-3.x.patched loop.c
    Files /tmp/loop.c-3.x.patched and loop.c differ

por lo que Loop-AES no se puede usar en Ubuntu de forma inmediata. Necesita parchear y recompilar el kernel como se explica aquí:http://loop-aes.sourceforge.net/loop-AES.README. Por eso mounttodavía se necesita Cryptoloop.

Si aún recibe un mensaje de error similar después de cargar, cryptoloop.koes posible que no se reconozca el tipo de cifrado. Por ejemplo, mi Ubuntu 12.04 no reconoció aes-128, pero aes. SLES sólo reconoce aes-128.

Respuesta2

En realidad, existe una aplicación Java.hfexploradorque puede abrir .dmgarchivos cifrados y crear .dmgimágenes descifradas que se pueden montar en Linux.

Pude crear .dmgarchivos cifrados en OS X 10.9.5 y luego explorar la imagen desde una máquina virtual que ejecuta Ubuntu 14.04.2 LTS. Tanto el cifrado AES-128 como el AES-256 funcionaron en mis casos de prueba.

Así es como creé la .dmgimagen:

$ hdiutil create -size 10m -layout NONE -fs HFS+ -encryption AES-256 -volname "Vault" vault.dmg

Desde la máquina virtual que ejecuta Ubuntu pude abrir la imagen:

$ ./hfsexplorer-0/bin/hfsexplorer.sh /tmp/vault.dmg

Solicita una contraseña y luego muestra el contenido de la imagen. Hay una opción (Herramientas -> crear imagen de disco) que crea una imagen de disco descifrada que luego se puede montar con las herramientas hfs de Linux.

$ mount vault_decrypted.dmg /mnt/hfs/

Incluso los sistemas de archivos con registro HFS+ funcionaron. La única limitación es que la compatibilidad con escritura en sistemas de archivos HFS+J está deshabilitada de forma predeterminada en Linux.

Esto demuestra que el cifrado .dmgse entiende hfsexplorery posiblemente podría implementarse en el mountcomando. Al crear un archivo sin cifrar, .dmgfinalmente es posible montar la imagen en Linux.

vfdecryptA mi tampoco me funcionó.

información relacionada