Como criar arquivos criptografados compactados com alcatrão e gpg

Como criar arquivos criptografados compactados com alcatrão e gpg

Existem muitas razões pelas quais você pode querer criar arquivos de arquivos criptografados compactados. Você pode criar um backup criptografado de seus arquivos pessoais. Outro cenário possível é que você pode compartilhar em particular o conteúdo com um amigo ou colega na web ou através do armazenamento em nuvem. Alcatrão.gz arquivos, ou comprimido Tarballs, são criados usando o comando tar. Esses tarballs são praticamente o formato padrão para arquivos no GNU/Linux, no entanto, eles não são criptografados. Nos cenários acima, mencionamos que muitas vezes é desejável ter criptografia para proteger seus dados. É aqui que gpg entra.

gpg é uma ferramenta criptográfica muito versátil que permite criptografar arquivos, criptografar email e verificar a integridade de arquivos assinados.

Neste tutorial, você aprenderá:

  • Para criar arquivos compactados usando alcatrão
  • Para criar arquivos compactados criptografados usando alcatrão com GPG em um pipeline
  • para criar vários arquivos de diretórios criptografados individuais
  • Um método rápido sujo para copiar esses arquivos sobre uma rede adicionando NetCat ao pipeline
Como criar arquivos criptografados compactados com alcatrão e gpg

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema Independente da distribuição
Programas alcatrão, gpg
Outro Os privilégios raiz podem ser necessários, dependendo das permissões dos arquivos e diretórios que você deseja arquivar
Convenções # - comandos do Linux a serem executados com privilégios root diretamente como usuário root ou por uso de sudo comando
$ - comandos Linux a serem executados como um usuário não privilegiado regular

Crie arquivo comprimido

Antes de discutirmos a criação de arquivos criptografados, vamos revisar como criar arquivos de alcatrão comprimidos em primeiro lugar. Supondo que você tenha um diretório nomeado pasta que você deseja arquivar, insira o seguinte comando

Pasta $ tar -cvzf.alcatrão.pasta gz 


O -c A bandeira é usada para criar o arquivo, -v é usado para saída detalhada para que tenhamos feedback visual que nos permita saber que isso está acontecendo e -z é usado para comprimir o arquivo para que o tamanho da vida seja menor.

Para descomprimir e extrair este arquivo mais tarde, você inseriria o seguinte comando.

Pasta $ tar -xvzf.alcatrão.gz 

o -x A bandeira é usada para extrair o arquivo, -v é para extração detalhada e -z é descomprimir o arquivo.

Crie um arquivo criptografado

Agora que analisamos a criação de um arquivo com alcatrão, Vejamos como podemos criar um arquivo criptografado adicionando gpg para a mistura. Você pode optar por usar criptografia baseada em chave, criptografia baseada em senha ou uma combinação de ambos. Já analisamos o uso de criptografia baseada em chaves em um artigo como criptografar e descriptografar arquivos individuais com GPG, para que veremos a criptografia baseada em senha aqui. Para criar um arquivo comprimido criptografado de um diretório chamado pasta, insira o seguinte comando.

$ tar -cvzf - pasta | pasta gpg -c>.alcatrão.gz.gpg 

Todos os alcatrão bandeiras são iguais que em nosso exemplo anterior. A única diferença é que, em vez de especificar um nome de arquivo para o nosso arquivo dentro do comando alcatrão, especificamos - para que possamos colocar a saída do alcatrão comando em gpg. Então passamos a fazer exatamente isso e gpg's -c A bandeira indica que queremos criptografar o arquivo com uma cifra simétrica usando uma senha como indicamos acima. Finalmente, redirecionamos a saída para um arquivo chamado pasta.alcatrão.gz.gpg com >. Depois de entrar neste comando, você será solicitado a entrar na senha que deseja usar para criptografar os dados. Se você não gosta desse comportamento e prefere especificar a senha no comando, você pode adicionar o --senha bandeira depois -c como mostrado abaixo.

AVISO
Especificar uma senha na linha de comando usando a pasprafrase é menos segura por vários motivos. Ele salvará a senha no seu histórico de bash (ou qualquer outro arquivo de histórico de shell). Além disso, se você estiver em um sistema multiusuário, outros usuários poderão ver sua senha estar examinando processos de execução. Mesmo se você é o usuário único de um sistema, qualquer software capaz de examinar os processos atualmente em execução pode potencialmente registrar sua senha.

$ tar -cvzf - pasta | GPG -C -Passphrase YourPassword> Pasta.alcatrão.gz.gpg 

Para descriptografar, descomprimir e extrair este arquivo mais tarde, você entraria no seguinte comando.

Pasta $ gpg -d.alcatrão.gz.gpg | Tar -xvzf - 

O -d Flag diz gpg que queremos descriptografar o conteúdo do pasta.alcatrão.gz.gpg arquivo. Em seguida, colocamos isso para o comando alcatrão. O -x A bandeira é usada para extrair o arquivo que é canalizado do GPG, -v é para extração detalhada, -z é descomprimir o arquivo e -f - especifica que o arquivo que está sendo desarquivado está sendo canalizado em.

Crie vários arquivos de diretórios criptografados individuais

Os exemplos acima assumem que queremos criar um único arquivo criptografado com base em um único diretório. E se tivermos um diretório cheio de vários subdiretos, mas queremos criar um arquivo criptografado separado para cada diretório? Podemos usar uma festa para loop para nos ajudar a realizar isso. Simplesmente cd Para o diretório que contém os subdiretos para os quais você deseja criar arquivos individuais e inserir o seguinte comando.

$ para i em *; DO TAR -CVZF - "$ i" | GPG -C - -Passphrase YourPassword> "$ i".alcatrão.gpg; feito 

Criptografando transmissões de arquivamento do NetCat sobre a rede.

Em uma dica e truques com o artigo de comando NetCat, mostramos como usar o NetCat para transferir diretórios de um computador para outro pela rede. Nesse artigo, observamos que esse método de transferência de dados não era seguro porque faltava criptografia.Gpg pode ser usado para adicionar uma camada de criptografia ao processo. Vamos supor que o computador do qual você deseja copiar o arquivo tem o nome do host host1, O computador que você deseja copiar os dados tem o nome do host host2, e o diretório que queremos transferir é nomeado pasta.

Insira o seguinte host1

$ tar -cvzf - pasta | gpg -c | nc -l 6666 


Depois de entrar neste comando, você será solicitado a entrar na senha que deseja usar para criptografar os dados.

Agora host2 Digite o seguinte comando

$ nc host1 6666 | gpg -d | Tar -xvzf - 

Depois de entrar neste comando, você será solicitado a entrar na senha que você escolheu na etapa anterior. Agora você deveria ter o pasta diretório em sua totalidade no atual diretório de trabalho de host2.

O exemplo acima realizará o trabalho se você precisar copiar dados criptografados sobre a rede, mas o uso do SCP do suíte OpenSSH é uma opção muito melhor se estiver instalada no seu sistema ou você tiver os privilégios necessários para instalá -lo. Sinta -se à vontade para manter esse truque no bolso de trás, se você estiver em uma situação para a qual esse não é o caso.

Conclusão

Neste artigo, discutimos como fazer arquivos alcaturinos compactados, como criptografá -los, como criar vários arquivos de diretórios criptografados individuais e também aprendemos um método rápido e sujo para copiar arquivos criptografados sobre uma rede adicionando NetCat ao pipeline. Se nada mais, é evidente que, ao combinar essas ferramentas GNU/Linux, alcançamos resultados maiores que a soma de suas partes.

Tutoriais do Linux relacionados:

  • Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
  • Coisas para instalar no Ubuntu 20.04
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Como gerar e fazer backup de um Keyyair GPG no Linux
  • Criptografia de disco completo com veracrypt no Ubuntu Linux
  • Manipulação de big data para diversão e lucro Parte 1
  • Ubuntu 22.04 Backup e restauração do sistema
  • Coisas para fazer depois de instalar o Ubuntu 22.04 Jellyfish…
  • Como verificar a integridade de um iso de distribuição Linux…
  • Configurando o ZFS no Ubuntu 20.04