La seguridad de la información Linux es un aspecto más que clave para miles de usuarios ya que muchos de los datos que manejamos a diario son catalogados como confidenciales y si caen las manos erróneas simplemente estaremos en líos de privacidad.
Hoy en días los métodos de información han avanzado mucho y algunas de las plataformas que usamos para ello nos ofrecen protocolos de seguridad especiales, pero en vista de que casi que por defecto los datos se alojan en la nube, estos pueden estar en un factor de riesgo ya que la nube es mundial. Si bien es cierto que nos permite acceder a estos datos desde cualquier lugar también implica que si no se cuenta con las medidas de seguridad correctas simplemente una persona con las herramientas adecuadas podrá vulnerar la nube y acceder a nuestros datos.
Podemos proteger datos Linux desde el acceso a la cuenta como los dispositivos físicos donde se aloja la información, pero sin duda que uno de los métodos más efectivos es cifrar los datos para evitar el acceso, y esto ya no es como hace algunos años donde debíamos cifrar todo el disco duro, ahora es posible reducir esta tarea al cifrado de solo porciones o un objeto en específico.
Para ayudarnos a esta tarea contamos con Gocryptfs y Solvetic te explicará cómo funciona y de que se trata esta utilidad.
1. Qué es Gocryptfs y uso de parámetros
Gocryptfs hace uso de un sistema de encriptación que está basado en archivos el cual se implementa como un sistema de archivos FUSE montable, esto permite que cada uno de los archivos en Gocryptfs sea almacenado en un archivo cifrado en el disco duro. Los archivos que son cifrados con esta utilidad pueden ser almacenados en diferentes carpetas del disco duro, en una memoria USB o dentro de la carpeta de Dropbox si así lo deseamos.
Una de las ventajas de usar Gocryptfs es que al ser esta un sistema de cifrado basado en archivos y no con el método de cifrado de disco, es que cada uno de los archivos cifrados están en capacidad de ser sincronizados mucho más integralmente al usar utilidades como Dropbox o rsync. Gocryptfs está basado en EncFS y permite mejorar la seguridad, así como entregar un rendimiento optimo en las tareas que sea requerido.
- Cifrado de contraseña
- Cifrado GCM para todo el contenido del archivo
- Cifrado de bloque ancho EME para nombres de archivo con un IV por directorio
Gocryptfs trabaja en sistemas Linux y en macOS está aún en fase de pruebas.
- -aessiv: implementa el modo de cifrado AES-SIV
- -allow_other: permite el acceso a otros usuarios, sujeto a la verificación de permisos de archivos
- -config string: hace uso del archivo de configuración que indiquemos en vez de usar CIP-HERDIR/gocryptfs.conf.
- -d, -debug: habilita la salida de depuración
- -dev, -nodev: esta opción habilita (-dev) o deshabilita (-nodev) archivos de dispositivo en un montaje gocryptfs (predeterminado: -nodev)
- -exec, -noexec: habilita (-exec) o deshabilita (-noexec) ejecutables en un montaje gocryptfs
- -forcedecode: Forza la decodificación de archivos cifrados aun si falla la verificación de integridad
- -fsck: Verifica la consistencia de CIPHERDIR, en caso de ser detectados daños, el código de salida es 26
- -fusedebug: habilite la salida de depuración de la biblioteca FUSE
- -h: accede a la ayuda de la utilidad
- -hh: despliega todas las opciones disponibles
- -info: imprime el contenido del archivo de configuración para ser leído por el ser humano, eliminando los datos confidenciales.
- -init: Inicializa el directorio encriptado.
- -masterkey string: hace uso de una clave maestra explícita indicada en la línea de comando
- -nonempty: Permite el montaje sobre directorios no vacíos
- -noprealloc: Desactiva la preasignación antes de escribir los datos
- -passwd: cambia la contraseña del directorio
- -plaintextnames: No cifra nombres de archivos ni destinos de enlaces simbólicos.
- -raw64: usa la codificación base64 sin relleno para nombres de archivo
- -speed: Ejecuta la prueba de velocidad de cifrado.
1. Instalar Gocryptfs en Linux
Para instalar esta utilidad de cifrado vamos a ejecutar el siguiente comando:
En Ubuntu o Debian: sudo apt install gocryptfs En CentOS o Fedora: sudo dnf install gocryptfs En Manjaro: sudo pacman -Syu gocryptfs
En este caso lo instalaremos en Ubuntu:
sudo apt install gocryptfs
Una vez instalado podemos validar la versión usada con el siguiente comando:
gocryptfs -version
2. Crear directorio encriptado Gocryptfs en Linux
Básicamente el proceso de uso para cifrar un archivo es el siguiente:
- Crear un directorio donde se alojarán los archivos y subdirectorios a cifrar
- Hacer uso de Gocryptfs para inicializar dicho directorio.
- Crear un directorio vacío el cual actuara como punto de montaje para más adelante montar el directorio cifrado en él.
- En el punto de montaje, es posible ver y usar los archivos descifrados y crear otros nuevos si es el caso
- Desmontar la carpeta cifrada cuando el proceso haya finalizado
Crearemos el directorio con el comando “mkdir”:
mkdir Solvetic1
Ahora vamos a inicializar este nuevo directorio, allí se creará el sistema de archivos Gocryptfs dentro del directorio asociado:
gocryptfs -init Solvetic1
Al pulsar Enter ingresamos y confirmamos la contraseña a usar y como resultado obtendremos las claves maestras del directorio. Esta clave maestra podemos copiarla y pegarla en un lugar seguro.
Ahora iremos al directorio que hemos creado con el comando “cd”:
cd Solvetic1
Una vez allí ingresamos lo siguiente:
ls -ahl
Allí encontramos dos archivos que son:
- “gocryptfs.diriv” el cual es un archivo binario corto
- “gocryptfs.conf” es un archivo donde se alojan las configuraciones e información a respaldar
cat gocryptfs.conf
3. Montar directorio encriptado Gocryptfs en Linux
El directorio cifrado será montado en un punto de montaje, esto es un directorio vacío, creamos el nuevo directorio:
mkdir Solvetic2
Es momento de montar el directorio cifrado en el punto de montaje, esto lo que hace es montar es el sistema de archivos Gocryptfs dentro del directorio encriptado que hemos creado, ejecutamos:
gocryptfs Solvetic1 Solvetic2
Al realizar esto ingresaremos la contraseña que ha sido asignada en un principio y veremos lo siguiente:
Una vez montado el directorio podremos crear y editar en el los objetos que sean necesarios, en este caso creamos un archivo de texto con “touch” y con “gedit” lo editamos:
touch Solvetic.txt gedit Solvetic.txt
Al cambiar al directorio cifrado podemos ver que ha sido creado un nuevo archivo donde su nombre está cifrado:
Allí podemos usar “ls -hl” para detalles más completos:
Podemos intentar visualizar el contenido de este archivo con el comando “les”:
less “archivo”
4. Desmontar directorio encriptado Gocryptfs en Linux
Cuando sea el momento necesario podemos desmontar el directorio haciendo uso del comando fusermount:
fusermount -u Solvetic2
Luego podemos acceder a este directorio y con “ls” validar que está vacío:
Gocryptfs es una de las soluciones más completas para añadir seguridad a los archivos confidenciales en Linux.