La privacidad es algo que a casi todos nos preocupa. Mucha gente se pasa a Linux por sus mejores características de privacidad. En esta época, en la que mucha gente cree (con razón) que la privacidad ya no existe, Linux ofrece un rayo de esperanza. Distribuciones como Tails OS están diseñadas específicamente para ello.
- Modo más seguro de cifrar archivos en un sistema Linux
- GnuPG
- Uso
- Encriptar archivos utilizando la clave pública de alguien:
- Desencriptar archivos usando tu clave privada
- ccrypt
- 7-zip
- Crear archivo
- Listado de ficheros de un archivo
- Desencriptar un archivo
- Instalación
- VeraCrypt
- Instalación
- Setup
- Acceso al volumen encriptado
- Tails OS
- Conclusión
Modo más seguro de cifrar archivos en un sistema Linux
Un elemento importante de la privacidad es el cifrado. Hoy queremos mostrarte los mejores y más fiables métodos de encriptación disponibles en la plataforma Linux.
GnuPG
GnuPG es la herramienta de encriptación más utilizada en la plataforma Linux. Esto tiene sentido porque forma parte del paquete GNU por defecto y viene preinstalado. También, porque tiene los algoritmos de encriptación más seguros en el trabajo. La forma en que GnuPG funciona es que tiene una clave pública y una clave privada (ya que utiliza el cifrado asimétrico). La clave pública se puede enviar a todo el mundo, con la que se pueden encriptar los archivos. Pero la clave privada, sólo la tienes tú. Y cualquier cosa que haya sido encriptada con la clave pública sólo puede ser descifrada con la clave privada.
Esto significa que primero tendrás que configurar las claves. Introduzca este comando para generar un par de claves:
gpg --gen-key
Le pedirá su nombre real y su dirección de correo electrónico. Asegúrate de introducir una dirección de correo electrónico activa, ya que se asociará a tu clave pública más adelante. Pulsa ‘O’ cuando se te pregunte si estás seguro o no (pero sólo si lo estás). A continuación, te pedirá una contraseña.
Ahora, asegúrate de introducir una contraseña fuerte y de recordarla bien. Si no, no tendrá sentido todo esto. Después de esto, habrá generado las claves pública y privada.
Uso
Ahora, para usar GPG, primero tendrás que compartir tu clave pública y necesitarás saber cómo encriptar/desencriptar archivos. En primer lugar, para obtener tu clave pública, introduce este comando:
gpg --armor --output mypubkey.gpg --export <E-mail that you registered>
Esto generará una clave pública llamada ‘mypubkey.gpg’. Puedes compartir esta clave pública con cualquiera que necesite enviarte archivos encriptados. O podrían utilizar esa dirección de correo electrónico asociada a la tuya para cifrar datos.
Ahora a aprender la parte de cifrar y descifrar datos:
Encriptar archivos utilizando la clave pública de alguien:
Para cifrar un archivo (suponiendo que el nombre es test.txt), utilice el comando de la siguiente estructura:
gpg --output test.txt.gpg --encrypt --recipient <Receiver's E-Mail ID> test.txt
Y por eso es tan importante el ID de correo electrónico registrado.
Como puede ver en el galimatías, el archivo ha sido encriptado con éxito.
Desencriptar archivos usando tu clave privada
Para desencriptar un archivo (suponiendo que el nombre del archivo encriptado sea test.txt.gpg) encriptado con tu clave pública, necesitas introducir este comando:
gpg --output test.txt --decrypt test.txt.gpg
Esto te pedirá la contraseña que introdujiste al crear las claves.
Después de introducir la contraseña, se producirá el archivo resultante de test.txt.
ccrypt
ccrypt también utiliza 256-AES para el cifrado y es sustancialmente más sencillo. Esto ciertamente funciona en un tono menos serio, por lo que el programa es ideal para archivos privados no tan importantes. Por ejemplo, si estás subiendo algo al almacenamiento en la nube de algún servicio, podrías usar esto. El uso es bastante sencillo. Para encriptar un archivo, entonces el siguiente comando:
ccencrypt <filename>
Entonces te pedirá una contraseña. Introduzca una contraseña (una larga y fuerte), y los datos serán encriptados con la extensión de .cpt.
Ahora para descifrar:
ccdecrypt <filename.cpt>
Ahora se le pedirá la contraseña que introdujo va a cifrar ese archivo. Introduzca la contraseña, y el archivo será descifrado.
Para instalar ccrypt en Ubuntu, Debian y sus derivados, introduzca:
sudo apt-get install ccrypt
Para Fedora y sus spins, introduzca:
sudo dnf install ccrypt
Introduzca el comando correspondiente según su distribución. Si los repositorios de tu distribución no lo tienen, puedes encontrar los binarios aquí.
7-zip
7-zip utiliza también cifrado 256-AES y tiene un ratio de compresión muy alto. Esto es lo más destacado de 7-zip. Casi todo el mundo ha oído hablar del infame formato .zip. El nombre oficial de 7-zip para sistemas Linux es p7zip (en referencia a Posix). Tiene un uso sencillo, que contaremos categóricamente:
Crear archivo
Crear un archivo consiste en un comando con el siguiente formato:
7z a <Required .zip archive name> <File names to be archived>
Aunque esto crea un archivo, todavía no lo cifra. Para añadir una contraseña al archivo, podemos utilizar el modificador -p.
7z a -p <Required .zip archive name> <File names to be archived>
Este comando también se utiliza para añadir ficheros a un archivo. Así es, la creación de un archivo y la adición de ficheros a un archivo se realizan a través del mismo comando.
Esto nos lleva al siguiente detalle importante:
Listado de ficheros de un archivo
El comando de listado tiene también una estructura sencilla que sigue esto:
7z l <Archive name>
Ejemplo:
Desencriptar un archivo
El desencriptado es también una tarea bastante sencilla. El comando requerido sigue esta estructura:
7z e <Archive name>
Eso debería bastar para los requisitos. Pero el comando es bastante más extenso, teniendo opciones para renombrar archivos dentro de un archivo, para probar su integridad, para borrar archivos de uno, etc. Estas se pueden encontrar a través del comando:
man 7z
Instalación
La instalación de la suite completa de 7z se puede hacer a través de este comando para Ubuntu, Debian o sus derivados:
sudo apt-get install p7zip-full
En Fedora y sus derivados:
sudo dnf install p7zip
Para otras distribuciones, los binarios se pueden encontrar aquí (al final de la página).
VeraCrypt
VeraCrypt es un sistema de cifrado único e interesante. Su uso es sencillo, una vez que lo configuras. Lo que hace es crear un volumen virtual completo que está cifrado. Este volumen, cuando se monta de la manera correcta, puede ser utilizado como un dispositivo de almacenamiento más, para copiar archivos hacia y desde la manera habitual, pero una vez desmontado, ya no está allí. El volumen existe dentro de un archivo binario borroso, que nadie puede leer. Ahora veamos cómo configurar esto.
Instalación
En todas las distribuciones, VeraCrypt necesita ser descargado e instalado. Puedes encontrar el paquete para tu distribución aquí. Vamos a mostrar las instrucciones para la versión gráfica aquí para mantener las cosas accesibles para todos.
En Ubuntu o Debian o cualquier derivado, las instrucciones para la instalación van así (considerando que el archivo está en el directorio de Descargas) :
cd Downloads/
sudo dpkg -i <Downloaded package name>
Probablemente falten dependencias. Para solucionarlo, ejecute este comando:
sudo apt-get -f install
Todo bien, ahora pasemos a lo bueno.
Setup
Para configurar el método de encriptación, primero hay que crear un archivo vacío. Para un archivo de ejemplo, lo llamaremos EncryptedVolume (lo sé, un poco en la nariz). Para ello, ejecuta este comando:
touch EncryptedVolume
Ahora abre VeraCrypt. Entre la lista de volúmenes de muestra, elige cualquiera. Idealmente, el primero (de nuevo, para mantener las cosas simples). Haz clic en la opción «Crear volumen» ahora. Esto abrirá una nueva ventana.
Ahora elige la opción ‘Crear un contenedor de archivos encriptados’.
Vamos con el ‘Volumen VeraCrypt estándar.
Hacemos clic en la casilla ‘Seleccionar archivo’, y seleccionamos el archivo que acabamos de hacer, EncryptedVolume.
El cifrado AES y SHA-512 por defecto es más que suficiente, así que nos quedamos de nuevo con el predeterminado.
Ahora introduce el tamaño del volumen encriptado según tus necesidades.
Este es el paso más crucial, ya que necesitarás una buena y segura contraseña para una encriptación fuerte. La contraseña recomendada es >= 20 caracteres, con bastante razón.
El sistema de archivos elegido por defecto (FAT) no es nada problemático. Si lo desea, puede seleccionar otro sistema de archivos.
Esta es la parte más divertida de toda la configuración. Se genera una clave a partir de los movimientos del cursor del ratón que hagas aquí. Sé lo más aleatorio posible. Cuando hayas terminado, pulsa ‘Formato’. Haga clic en ‘Sí’ en el siguiente aviso de confirmación.
Se creará un nuevo volumen. Ahora haga clic en ‘Salir’.
Acceso al volumen encriptado
Ahora para acceder al volumen encriptado recién creado, seleccione el volumen que seleccionó al configurar el volumen encriptado (que recomendamos, sea el primero). En la parte inferior de la ventana, haz clic en la opción ‘Seleccionar archivo…’, y elige el archivo que creaste, que ahora se ha convertido en el nuevo volumen encriptado.
Haz clic en ‘Montar.’
Esto te pedirá la contraseña que usaste para configurarlo. No se moleste con las otras opciones, y haga clic en ‘OK.’
Ahora le pedirá la contraseña del usuario.
Ahora cuando revise su administrador de archivos, habrá otro volumen que será del tamaño del volumen que especificó en la configuración. Ahora, este es el volumen virtual encriptado. Para cifrar tus archivos, cópialos y pégalos en este volumen recién montado. Cuando hayas terminado, vuelve a VeraCrypt, haz clic en ‘Desmontar’, y este volumen desaparecerá en el archivo EncryptedVolume de nuevo.
Incluso si abres un archivo desde este volumen, se copiará directamente en la RAM y se ejecutará, sin que intervenga ninguna otra parte del dispositivo de almacenamiento. Esta será una «bóveda» totalmente protegida, que es segura, y aparecerá como un archivo basura para cualquier otra persona. Bastante genial.
Tails OS
La parte final de este artículo es Tails OS. Este SO está creado para la experiencia de usuario orientada a la privacidad. Se llama ‘amnesic incognito live system’, al que sólo se puede acceder a través de una unidad USB externa en un ordenador anfitrión, y que es amnésico, lo que significa que no tendrá nada más que la nueva forma por defecto en cada uso. Cualquier cambio realizado en el uso se revertirá automáticamente en el siguiente arranque.
Por defecto, cuenta con criptografía y medidas de seguridad de última generación. Algunos de los factores incluyen:
- El cifrado y la firma de los correos electrónicos por defecto utilizando OpenPGP siempre que se utilice el cliente de correo electrónico, el editor de texto o el navegador de archivos
- Los mensajes instantáneos están protegidos utilizando OTR (que significa mensajería Off-The-Record). Proporciona son encriptación robusta para el propósito
- Elimina de forma segura los archivos (con en opción de recuperación en absoluto) utilizando Nautilus Wipe
Hay varias cosas más, pero estos son sólo los adornos para describir su seriedad. Puedes encontrar más información sobre Tails aquí. Es un sistema bastante práctico para usar sobre la marcha, ya que todo lo que necesitas es un sistema que no esté actualmente en uso. Si tienes la unidad USB del sistema operativo Tails, puedes arrancarlo, y cuando termines, nadie lo sabrá. Ni siquiera esa unidad USB, más adelante.