GNU/Linux >> Tutoriales Linux >  >> Linux

Almacenar archivos en una imagen cifrada

Imagine este escenario:tiene archivos en su computadora que preferiría mantener seguros. Dichos archivos podrían contener datos confidenciales como contraseñas y datos bancarios. Mantenerlos en su computadora es una solución conveniente; sin embargo, si su computadora fue pirateada o robada, alguien podría acceder fácilmente a sus archivos si su unidad no estuviera encriptada. Las contraseñas para desbloquear su PC no son un problema para alguien que sabe lo que está haciendo, especialmente las contraseñas que son ridículamente débiles.

Hay una manera de almacenar datos confidenciales de forma segura en su computadora sin preocupaciones. Simplemente tenga un archivo de imagen encriptado del tamaño que elija que pueda montar como lo haría con cualquier otra unidad.

Requisitos

Necesitarás tener cryptmount instalado. Cryptmount es la herramienta que se utilizará para crear el sistema de archivos cifrados en su imagen y montar y desmontar dicha imagen.

Crear la imagen

Usaremos el comando 'dd' para crear un archivo de cierto tamaño, digamos 128 MB. Esto actuará como una unidad virtual para almacenar sus archivos.

$ dd if=/dev/zero of=imageForFiles.img bs=1M count=128

Lo que esto hace es simplemente escribir un montón de ceros en un archivo con un tamaño de bloque de 1 MB para generar un archivo de 128 MB (128 bloques de 1 MB).

Configurar la imagen para 'cryptmount'

Después de instalar cryptmount, deberá editar '/etc/cryptmount/cmtab' para crear una entrada que configurará el sistema de archivos que desea usar para almacenar archivos. Necesitará privilegios de root para editar este archivo. La página de manual de cryptmount contiene una plantilla que se puede utilizar.

Querremos reemplazar '/dev/hdb63' con la ubicación de nuestra imagen de 128 MB, luego reemplace 'opaco' con el nombre de destino que desee. Elegí el mismo nombre que el archivo de imagen, siguiendo el patrón que se encuentra en la página del manual.

También cambié el nombre del archivo clave para usar el mismo nombre que la imagen. Los otros campos que puede cambiar son el punto de montaje (dir), las opciones de montaje, el tipo de sistema de archivos esperado (fstype), el cifrado y el formato de la clave. Por ahora, para los propósitos de este tutorial, podemos dejar estos valores predeterminados. Cambié el tipo de sistema de archivos a ext4 pero esto es opcional.

Creación del sistema de archivos

Una vez que se ha creado la entrada en cmtab, podemos comenzar a preparar el sistema de archivos cifrados. Estos comandos deberán ejecutarse nuevamente como root. Aquí es donde comenzamos a usar cryptmount. Primero, necesitamos generar la clave para el cifrado. Generemos una clave de 256 bits (32 bytes). Cualquiera que sea la clave que decida elegir, deberá asegurarse de que sea compatible con el cifrado elegido, para que no encuentre errores. En este caso, seguiremos la recomendación establecida por la página man:

$ sudo cryptmount –generate-key 32 imageForFiles

Se le pedirá que establezca una contraseña para acceder a la imagen. Después de eso, prepare la imagen para que se pueda crear el sistema de archivos:

$ sudo cryptmount –prepare image

ForFilesEsto crea el archivo del dispositivo, '/dev/mapper/imageForFiles', que nos permite crear un sistema de archivos.

El siguiente paso consiste en crear el sistema de archivos usando mke2fs. Hacemos referencia al dispositivo asignado creado por cryptmount para permitir que esto suceda.

$ sudo mke2fs /dev/mapper/imageForFiles​

Una vez que se crea el sistema de archivos, le decimos a cryptmount que libere el dispositivo mapeador:

$ sudo cryptmount –release imageForFiles

​Montaje y Desmontaje

Ahora que el sistema de archivos está listo, podemos montarlo y almacenar archivos en el volumen. El montaje y desmontaje se realizan mediante cryptmount. Si el directorio del punto de montaje aún no existe, créelo antes del montaje:

$ sudo mkdir /home/crypt 

Por supuesto, si está en su directorio de inicio, no necesita acceso de root.

$ cryptmount -m imageForFilesSee

Podemos usar esta imagen sin acceso de root. Se le pedirá la contraseña cuando haga esto. Luego ejecuta e2fsck para verificar el sistema de archivos.

Por supuesto, si está en su directorio de inicio, no necesita acceso de root.

$ cryptmount -m imageForFilesSee

Podemos usar esta imagen sin acceso de root. Se le pedirá la contraseña cuando haga esto. Luego ejecuta e2fsck para verificar el sistema de archivos.

Su imagen está montada. Deberá transferir la propiedad de la "unidad" a su propio usuario desde la raíz para poder modificar libremente el contenido de la imagen:

$ sudo chown your_username /home/crypt​

Puede acceder y modificar archivos como lo haría con cualquier otra unidad. Una vez terminado, simplemente desmonte:

$ cryptmount -u imageForFiles

Mis recomendaciones

Tengo algunos consejos que pueden ser muy beneficiosos.

  • Colocar imágenes cifradas en una carpeta fuera de su directorio de inicio (para que solo el root tenga acceso al archivo en sí) no es una mala idea si le preocupa la seguridad.
  • Al nombrar objetivos en el archivo cmtab, utilice el nombre de los archivos de imagen para evitar confusiones.
  • Pruebe diferentes cifrados.

Conclusión

Con suerte, este tutorial destacó la simplicidad de almacenar de forma segura datos confidenciales en su computadora usando imágenes cifradas. Las imágenes cifradas en su computadora son fáciles de configurar y aún más fáciles de usar cryptmount.


Linux
  1. Explorando el sistema de archivos /proc de Linux

  2. Archivos importantes del sistema de archivos Linux /proc que debe conocer

  3. ¿Cómo montar un sistema de archivos, asignando ID de usuario?

  4. ¿Establecer Umask para el sistema de archivos montado en Sshfs?

  5. ¿Recuperar la carpeta eliminada en el hogar cifrado?

3 formas de extraer y copiar archivos de una imagen ISO en Linux

Cómo clonar una imagen de disco cifrada con Clonezilla

Listar todos los archivos de imágenes gráficas con find?

¿Cómo puedo encontrar todos los archivos vinculados en un sistema de archivos?

¿Cómo debo almacenar de forma más segura los archivos obtenidos al duplicar un sitio web?

¿Cómo colocar/almacenar un archivo en la memoria en Linux?