Mejorando aún más la seguridad de mis datos (ver post para entender mejor) ahora uso GPG para cifrar los archivos de FlatPress. La idea surgió gracias a sieg84 y a HacKan, quienes me sugirieron que en vez de comprimir con password los archivos en un .RAR, simplemente comprimiera en .TAR.GZ y luego cifrara ese comprimido protegiéndolo con GPG.
Linux tiene muchas cualidades que me gustan, una de ellas es la ENORME documentación que tienen las aplicaciones, por lo que un simple man gpg en una terminal, listo… me devuelve toda la ayuda para aprender a trabajar con este
Aquí les mostraré cómo pueden proteger un archivo con GPG sin muchas complicaciones, usando un password (passphrase o palabra-password) … y obviamente, luego cómo podrán acceder a él
Supongamos que tenemos el archivo: mis-claves.txt
Para proteger a este archivo usando GPG en una terminal basta con poner:
gpg --passphrase desdelinux -c mis-claves.txt
¿Esto qué significa?
--passphrase desdelinux
-» Con esto indicamos que cifraremos/protegeremos el archivo con el password: desdelinux-c mis-claves.txt
-» Con esto indicamos que es el archivo mis-claves.txt el que deseamos proteger.
Esto les creará un archivo llamado mis-claves.txt.gpg que es el cifrado, el que está protegido con GPG.
Esto tiene un detalle que al menos a mí no me gusta, pues al crearse el archivo mis-claves.txt.gpg se puede ver a simple vista (con solo ver el nombre del archivo) que es en realidad un archivo .txt, si bien NO podrán ver su contenido, personalmente no me gusta que sepan el tipo de archivo que es en realidad. Para evitar esto, podemos agregar el parámetro -o … el cual sirve para especificar el nombre del archivo final. O sea:
gpg --passphrase desdelinux -o mio.gpg -c mis-claves.txt
Esto generará un archivo llamado mio.gpg … y ya nadie sabrá qué extensión es en realidad el archivo
Y así de simple es proteger archivos usando GPG y una palabra de password (passphrase), pero… ¿cómo descifrar un archivo?
Para poder ver el contenido de un archivo protegido con GPG es simple también …
gpg --passphrase desdelinux -d mis-claves.txt.gpg
Como ven, lo único que cambia es que ahora al final ponemos -d (-d de descifrar) en vez del -c (-c de cifrar) que usamos antes
Y esto es todo. Así de simple es proteger archivos con GPG sin complicarnos generando llaves ni mucho menos…
Si desean como fue mi caso, proteger una carpeta que contiene muchos archivos y subcarpetas, lo que hice fue comprimir en .TAR.GZ la carpeta y su contenido, y luego ese archivo comprimido (.tar.gz) es el que protegí con GPG.
Bueno… nada más que agregar, solo aclarar que no soy ni de lejos un experto en esto, por lo que si alguien conoce más al respecto, le agradecería que comparta con todos nosotros sus conocimientos
quisiera hacer una observacion, soy usuario de gentoo y el paquete «app-crypt/gnupg» no lo tenia instalado, hago la observacion xq imagino que arch y otras distros del tipo «hagalo usted mismo» tendran que instalar el paquete para poder encriptar con gpg
Oh vale, perfecta la aclaración 😀
Gracias por el comentario 🙂
Hola! Tengo una duda, ¿hay alguna manera tal que al descifrar el archivo devuelva el nombre original o por lo menos la extensión original?
Un saludo y muchas gracias 🙂
Hola que tal.
No soy experto en el tema, solo me leí la ayuda y busqué un poco de información al respecto jaja, pero… no estoy muy seguro. No leí de ninguna opción que permitiera que al descifrar, automáticamente reconozca el tipo de archivo y le ponga la extensión al final, por eso usé la opción -o para el output.
Aunque, si cifras archivo.txt se convertiría en archivo.txt.gpg, y al descifrarlo volvería a ser archivo.txt
exactamente a eso se debe el comportamiento. si se le cambia el nombre luego de encriptado, no podra saberse la extension del archivo al desencriptar (en principio, dado que se puede analizar dicho archivo desencriptado y conocer asi su extension)
saludos!
En efecto 😀 … de hecho, un amigo me mostró un ejemplo de openssl … ¿conoces este comando? … nada mal jejeje.
Basta añadir de nuevo la opción -o archivo.txt
El problema es que automáticamente no lo hace (que yo sepa).
Otra opción es que siempre lo comprimas en un archivo y luego hagas gpg con el nombre que quieras y así tú sabes que ese archivo siempre será un comprimido. No sé, es una idea.
Una pregunta, ya que no se usan el par de llaves sino una palabra clave (un password) no sería más fácil crear un RAR con clave y ya?
En el script(LINK!) que publiqué aquí hace unos días lo que hacía era eso, comprimir en .RAR con password, pero… dado que GPG es mucho más seguro y fiable, por eso decidí usarlo en vez del .RAR 🙂
Ya, este tipo de cosas está bien para mandar los archivos cifrados a otra persona pero recuerden que antes de cifrar un archivo este se encuentra si cifrar en algún sitio y aunque lo borremos sólo bastaría con usar alguna utilidad de recuperación de datos para hacernos con él.
Yo recomiendo el uso de particiones encriptadas con LUKS + LVM es lo más seguro que he visto: O sabes la contraseña o no entras y no afecta al rendimiento del equipo.
Por otro lado, a la hora de borrar archivos sensibles suelo usar el comando «srm». Aunque es lento, da muy buen resultado.
Sí, había pensado en la posibilidad de que se podrían recuperar los datos una vez borrados… mmm no conozco srm, le echaré un ojo a ver qué tal 😀
El asunto de usar LVM y tal… joder, para el propósito personal de esto, o sea, para lo que estoy haciendo mi propio «sistema de seguridad», ahí creo que sí sería exagerar demasiado LOL!!.
Gracias por tu comentario, de veras que sí 😉
Saludos
Si te interesa el tema, tngo entendido que Ubuntu 12.10 tiene una opcion para hacerlo simple al instalar. Con las versiones anteriores, se hace usando el alternate.
Pero si te interesa hacerlo ‘a mano’, pasate por mi web que escribi un tutorial al respecto hace un tiempo…
Saludos!
No entendí este comentario LOL!
¿Hacer qué simple al instalar?
Mejor que uses:
$ gpg -o mio.gpg -c mis-claves.txt
Así no dejarás la contraseña en el historial:
$ history
O al menos borra el comando del historial:
$ history -d numero
Eso es muy cierto, un pequeño detalle a tener en cuenta siempre.
Si existe una manera de recuperar la extención comprimiendolos y redirigiendo mediante tuberias a gpg. Veamos un script.
tar –create «$@» | gzip | gpg –default-recipient-self –no-tty –symmetric –encrypt –bzip2-compress-level 3 –passphrase «`zenity –entry –hide-text –text «Tecle el pasword de apertura»`» > «`basename %f | sed ‘s/\.[[:alpha:]]*$//’`.gpg»
para decifrarlo
gpg –no-tty –decrypt –passphrase «`zenity –entry –hide-text –text «Tecle el pasword de apertura»`» –output «`basename %f .gpg`.tar.gz» «$@»
Buenas.
Buscando información sobre GPG, he encontrado esta entrada que me ha ido perfecta, pero tengo una duda, a ver si me pueden echar un cable.
La duda es que si quiero usar gpg tengo que haber creado las claves publicas y privadas, correcto?
Asi mismo, estoy utilizando un bash que se ejecuta desde un cron con otro usuario y quiero aprovechar las claves creadas con mi usuario desde este cron. He provado lo siguiente «gpg –local-user miUsuario» pero no me funciona.
Estoy que quiero hacer, se puede hacer, o busco otra cosa.
Gracias