Tomb, el sepulturero criptográfico

https://www.dyne.org/wp-content/uploads/2011/11/github_tomb.jpg http://dyne.org/software/tomb | https://github.com/dyne/Tomb


Introducción

Tomb es un instrumento para la gestión simple de directorios cifrados bajo GNU/Linux. Su origen se remonta al efectivo sistema de Anidado ya presente desde las versiones 1.x del sistema operativo libre dyne:bolic.

Esta es una herramienta 100% libre y de código abierto enfocada a la portabilidad y respaldo de archivos personales. Su código está escrito de tal manera que puede ser revisado fácilmente además de que comparte elementos comúnes presentes en sistemas operativos libres.

Su mecanismo es simple pero efectivo: Tomb genera archivos cifrados de almacenamiento que se abren y cierran utilizando archivos-llave que son protegidos por contraseñas elegidas por los usuarios.

Una Tumba (Tomb) es similar a un directorio cerrado que puede ser transportado de manera segura y vuelta oculta en un sistema de archivos; sus archivos-llave pueden ser separados físicamente, por ejemplo como cuando dejas la tumba en el disco duro de tu computadora, y te llevas las llaves para abrirla en una memoria USB.

Documentación

Nota: los siguientes textos son una adaptación o traducción de la documentación disponible en el repositorio principal de Tomb. En edición permanente.

Instalación

Utilización

Ganchos

Amarrando ganchos

El archivo de ancla o gancho (hook) es muy útil para montar directorios específicos ubicados dentro de la tumba, a colocarse dentro del directorio personal de cada usuario (home)

Imagina que lo que quieres es guardar de modo seguro dentro de tu tumba algunos directorios que normalmente se encuentran ubicados dentro de tu directorio personal, y que debido a ello deben estar exactamente en su lugar. Por ejemplo los directorios Mail y el subdirectorio "secretos" ubicado dentro de Documentos.

Los ganchos anclados te ayudan a solucionar este problema. Tan sólo tienes que mover esos directorios dentro de la raíz de la tumba y luego crear un archivo que se llame "bind-hooks", el cual deberá estar ubicado en ese mismo lugar. Entonces deberás escribir dentro de ese archivo una tabla a dos columnas siguiendo el modelo siguiente:

 correo Mail
 secretos Documentos/secretos

Como puedes observar, en la primera columna se indican las rutas relativas a la tumba y en la segunda columna se indican las rutas relativas a tu directorio personal Home. Toma en cuenta que previamente deberás crear los directorios en la ruta a la que quieras sean montados, en este caso el directorio "secretos" fue creado previamente.

De esta manera cada vez que abras tu tumba, los directorios serán montados en el lugar correcto, es decir, en el lugar que indicaste en las segunda columna.

Ganchos dinámicos

Otra manera de utilizar los ganchos es mediante archivos de consola o de ejecutables binarios a ser lanzados al abrirse la tumba.

Supongamos que lo que necesitas es que cada vez que abras tu tumba, también se abra el archivo "mis-tareas-por-hacer.txt", guardado dentro de la raíz de tu tumba. Para ello deberás crear un archivo que nombrarás "post-hooks", guardado también en la raíz de la tumba, y con el siguiente contenido:

 #!/bin/sh

 <tu editor de texto preferido> mis-tareas-por-hacer.txt

Ayuda

Vía línea de comandos

Desde la consola puedes teclear tomb -h y obtener una rápida y compacta guía de ayuda sobre el uso general de Tomb.

Tomb 2.0 - un poderoso y amable sepulturero para tus secretos


Syntaxis: tomb [opciones] comando [archivo]

Comandos:


Creación

 dig        crear un nuevo ARCHIVO de TUMBA del tamaño -s en MB
 forge      crea un nuevo archivo de LLAVE (key) con su respectiva contraseña
 lock       instala un candado en una TUMBA para usarla con la LLAVE 


Operaciones con tumbas

 open       abre una TUMBA. Abre un archivo tomb ya existente
 index      actualiza el indice de búsquedas de tumbas
 search     busca nombres de archivo en base a patrones de texto
 list       lista tumbas o archivos tomb abiertos y ofrece información sobre ellas
 close      cierra una tumba específica (o cierra todas utilizando 'all')
 slam       cierra inmediatamente una tumba y mata todos los programas que la utilizen
 resize     redimensiona una tumba al nuevo tamaño indicado con -s (sólo puede aumentar de tamaño)


Operaciones con llaves

 passwd     cambia la contraseña de la llave de alguna tumba (requiere la antigua contraseña)
 setkey     cambia la LLAVE (key) que bloquea una tumba (requiere la llave antigua y su contraseña)



Respaldo en papel

 engrave    genera un código QR code de una llave para que pueda ser impresa en papel


Esteganogradía

 bury       esconde una llave dentro de una imagen JPEG (para ser usado con -k)
 exhume     extrae una llave de una imagen JPEG (lo imprime a stout)


Opciones:

 -s     indica el tamaño del archivo tomb durante su creación/redimensión (en MB)
 -k     ruta a la llave a utilizar para abrir una tumba (con '-k -' se lee desde stdin)
 -n     no procesa los ganchos encontrados en la tumba
 -o     opciones especiales para montaje (por default: rw,noatime,nodev)
 -f     forza una operación (i.e. aunque swap se encuentre activo)
 --kdf  genera contraseña blindadas contra ataques de diccionario

 -h     muestra esta ayuda
 -v     sobre la versión de la herramienta
 -q     se ejecuta silenciosamente sin mostrar información
 -D     muestra información (debugging) del proceso durante el arranque 


(...)