Pesquisa de site

Tomb - uma ferramenta de criptografia de arquivos e backup pessoal para Linux


Tomb é uma ferramenta gratuita de código aberto, pequena, poderosa e simples para criptografar arquivos no GNU/Linux. No momento em que este artigo foi escrito, ele era composto por um script de shell (zsh) usando ferramentas genéricas de sistema de arquivos GNU e a API criptográfica do kernel Linux (cryptsetup e LUKS).

Ele também emprega várias ferramentas GNU/Linux, como steghide, lsof, mlocate, resizefs, dcfld e muitas mais, para estender sua funcionalidade.

Tomb é usado para criar backups seguros de arquivos secretos ou pessoais em diretórios criptografados e protegidos por senha, chamados tombs. Esses diretórios só podem ser abertos usando seus arquivos-chave e senhas associados.

Depois de criar uma tumba, você pode armazenar seus arquivos de chave separadamente, por exemplo, seu arquivo de tumba pode existir em um servidor remoto enquanto o arquivo de chave está em seu laptop ou desktop em casa ou no escritório. Se o arquivo túmulo estiver em seu laptop ou desktop, você pode ocultá-lo no sistema de arquivos ou, como opção mais segura, armazenar a chave em uma unidade USB.

Além disso, você pode ocultar uma tumba no sistema de arquivos ou movê-la com segurança através de uma rede ou em mídia de armazenamento externa; compartilhe com outros amigos ou colegas. Você também pode ocultar uma chave em uma imagem, como veremos mais adiante.

Requisitos

Tomb precisa de alguns programas como zsh, gnupg, cryptsetup e pinentry-curses ser instalado em um sistema para funcionar.

Como instalar o Tomb em sistemas Linux

Primeiro comece instalando as seguintes ferramentas necessárias usando o gerenciador de pacotes padrão de sua distribuição e também instalaremos o steghide para adicionar funcionalidade para ocultar chaves em imagens.

sudo apt install gnupg zsh cryptsetup pinentry-curses steghide	#Debian/Ubuntu
sudo yum install gnupg zsh cryptsetup pinentry-curses steghide	#CentOS/RHEL
sudo dnf install gnupg zsh cryptsetup pinentry-curses steghide	#Fedora 22+

Depois de instalar os pacotes necessários, baixe o código-fonte da tumba estável para sua distribuição ou use o seguinte comando wget para fazer download diretamente no terminal, conforme mostrado.

cd Downloads/
wget -c https://files.dyne.org/tomb/Tomb-2.5.tar.gz 

Em seguida, extraia o arquivo tar que você acabou de baixar e mova-o para a pasta descompactada.

tar -xzvf Tomb-2.5.tar.gz
cd Tomb-2.5

Finalmente, execute o seguinte comando, como root ou use o comando sudo para obter privilégios de root, para instalar o binário em /usr/local/bin/.

sudo make install

Como criar tumbas em sistemas Linux

Depois de instalar o tomb, você pode gerar um túmulo criando uma nova chave para ele e definindo sua senha conforme explicado abaixo.

Para criar uma tumba, use o subcomando dig e o sinalizador -s para definir seu tamanho em MB (esse tamanho pode ser aumentado quando uma tumba fica cheia após adicionar arquivos).

sudo tomb dig -s 30 tecmint.tomb      

Em seguida, crie uma nova chave para tecmint.tomb com o subcomando forge e defina sua senha quando solicitado. Esta operação levará algum tempo para ser concluída, basta sentar e relaxar ou preparar uma xícara de café.

sudo tomb forge tecmint.tomb.key

Ao criar a chave, tomb reclamará se existir espaço de troca no disco e será encerrado se a memória de troca estiver ativada, conforme mostrado na imagem a seguir. Isso se deve a um risco de segurança associado à memória swap no disco (consulte a documentação ou a página de manual para obter mais informações).

Você pode usar o sinalizador -f para forçar a operação ou desligar a memória swap com o seguinte comando.

sudo swapoff -a

Em seguida, tente criar a chave da tumba mais uma vez.

Em seguida, formate tecmint.tomb para bloqueá-lo com a chave acima. O sinalizador -k especifica a localização do arquivo-chave a ser usado.

sudo tomb lock tecmint.tomb -k tecmint.tomb.key

Como abrir uma nova tumba

Para abrir uma tumba, use o subcomando open, você será solicitado a inserir a senha que definiu ao criar a tumba.

sudo tomb open -k tecmint.tomb.key tecmint.tomb  

A partir da saída do comando anterior, a tumba foi aberta e montada em /media/tecmint/ – é aqui que você pode adicionar seus arquivos secretos.

Se você tiver vários túmulos, poderá listar todos os túmulos abertos e obter algumas informações sobre eles, conforme mostrado.

sudo tomb list 

Como copiar arquivos para abrir o túmulo

Agora você pode adicionar seus arquivos secretos ou importantes à tumba da seguinte maneira. Cada vez que precisar adicionar mais arquivos, abra primeiro a tumba, conforme mostrado acima.

sudo cp -v passwds.txt accounts.txt keys.txt -t /media/tecmint/

Depois de abrir uma tumba, quando terminar de usá-la ou adicionar arquivos a ela, use o subcomando close para fechar o arquivo da tumba. Mas se um processo estiver funcionando com uma tumba aberta, poderá falhar ao fechar.

sudo tomb close

Você pode fechar todas as tumbas correndo.

sudo tomb close all

Para forçar o fechamento de uma tumba aberta, mesmo quando um processo está interagindo com ela, use o subcomando slam.

sudo tomb slam 
OR
sudo tomb slam all 

Como ocultar a chave da tumba em uma imagem

Também é possível ocultar/codificar a chave da tumba em uma imagem usando o subcomando bury, como segue

sudo tomb bury -k tecmint.tomb.key zizu.jpg 

Em seguida, use a imagem JPEG recém-criada para abrir a tumba, conforme mostrado.

sudo tomb open -k zizu.jpg tecmint.tomb

Você também pode recuperar uma chave codificada em uma imagem JPEG com o subcomando exhume.

sudo tomb  exhume zizu.jpg -k tecmint.tomb.key
OR
sudo tomb -f exhume zizu.jpg -k tecmint.tomb.key   #force operation if key exists in current directory

Atenção: Lembre-se de ocultar a chave da tumba, não a mantenha no mesmo diretório da tumba. Por exemplo, moveremos a chave de tecmint.tomb para um local secreto (você pode usar seu próprio local) ou mantê-la-emos em uma mídia externa ou movê-la-emos para um servidor remoto via SSH.

sudo mv tecmint.tomb.key /var/opt/keys/  

Infelizmente, não podemos explorar todos os comandos e opções de uso do túmulo neste guia. Você pode consultar sua página de manual para obter mais informações. Lá você encontrará instruções sobre como alterar a chave e a senha de uma tumba, redimensioná-la e muito mais.

man tomb 

Repositório Github da Tumba: https://github.com/dyne/Tomb

Resumo

Tomb é uma ferramenta de criptografia simples, mas poderosa e fácil de usar para lidar com arquivos tão delicados quanto segredos em sistemas GNU/Linux. Compartilhe sua opinião sobre isso através do formulário de comentários abaixo.