/ / Como proteger com senha arquivos de texto usando o Vim no Linux (ou macOS)

Como proteger arquivos de texto com senha usando o Vim no Linux (ou macOS)

O editor de texto vim, uma ferramenta padrão incluída noLinux e macOS, pode criptografar rapidamente arquivos de texto com uma senha. É mais rápido e conveniente do que criptografar um arquivo de texto com um utilitário separado. Veja como configurá-lo.

Verifique se o Vim do seu sistema tem suporte para criptografia

Algumas distribuições Linux, incluindo Ubuntu,inclua uma versão mínima do vim por padrão, destinada apenas à edição básica de texto. Por exemplo, o Ubuntu chama este pacote de "vim-tiny". Se você tentar usar criptografia em uma versão tão mínima do vim, verá a mensagem "Desculpe, este comando não está disponível nesta versão".

Pode ser necessário instalar a versão completa do vim para obter esse recurso em sua distribuição Linux. Por exemplo, no Ubuntu, você pode obter a versão completa do vim executando o seguinte comando:

sudo apt install vim

A versão do vim incluída por padrão no macOSinclui suporte à criptografia, para que você não precise instalar mais nada em um Mac. Basta iniciar uma janela do terminal em Finder> Aplicativos> Utilitários> Terminal e os comandos funcionarão da mesma maneira no macOS do que no Linux.

Como criptografar um arquivo com uma senha

RELACIONADOS: Guia para iniciantes de edição de arquivos de texto com o Vi

O processo básico é relativamente simples se vocêsabe como usar vi. Caso contrário, você pode ficar preso na interface modal do vi. Quando você abre um arquivo de texto no vim, existem dois modos. Por padrão, você está em um "modo de comando", onde pode usar as teclas do teclado para executar comandos. Você também pode pressionar “i” para entrar no “Modo Inserir”, onde você pode digitar normalmente e mover o cursor com as teclas de seta, como faria em outros editores de texto. Para sair do modo de inserção, pressione "Esc" e você voltará ao modo de comando.

Primeiro, inicie o vim. Por exemplo, o comando a seguir iniciará o vim e o apontará para um arquivo chamado "exemplo" no diretório atual. Se esse arquivo não existir, o vim criará um arquivo chamado "exemplo" no diretório atual quando você o salvar:

vi example

Você também pode apontar o vi para outro caminho com um comando como o abaixo. Você não precisa criar um arquivo no diretório atual.

vi /path/to/file

Edite o arquivo normalmente. Por exemplo, você pode pressionar “i” para entrar no modo de inserção e digitar o texto normalmente. Ao editar um arquivo, pressione Esc para garantir que você esteja no modo de comando e não no modo de inserção. Tipo :X e pressione Enter.

Você será solicitado a digitar uma senha, que oarquivo de texto será criptografado com. Digite a senha que deseja usar, pressione Enter e digite-a novamente para confirmar. Você precisará digitar essa senha sempre que desejar abrir o arquivo no futuro.

O Vim avisa que você está usando um método de criptografia fraco por padrão. Mostraremos como usar um método de criptografia mais seguro posteriormente.

Uma senha será associada ao atualtexto no Vim, mas você precisará salvar suas alterações antes que a senha seja realmente atribuída ao arquivo. Para fazer isso, pressione Esc para garantir que você esteja no modo de comando e digite :wq e pressione Enter para gravar o arquivo no disco e sair do Vim.

Na próxima vez que você tentar abrir o arquivo no Vim, por exemplo, executando "vi example“—Vim solicitará a senha associada ao arquivo.

Se você digitar a senha incorreta, o conteúdo do arquivo ficará sem sentido.

Aviso: Não salve o arquivo se você o abrir e vir sem sentido. Isso salvará os dados corrompidos novamente no arquivo e substituirá os dados criptografados. Apenas corra :q sair do Vim sem salvar o arquivo no disco.

Há outro atalho que você pode usar aqui. Em vez de criar ou abrir um arquivo com "vim /path/to/file“, Você pode executar o seguinte comando para que o vim crie ou abra um arquivo e solicite imediatamente que você criptografe o arquivo com uma senha:

vi -x /path/to/file

Observe que você precisa usar um x minúsculo aqui, enquanto você usa um X maiúsculo ao executar o comando de criptografia associado a partir do Vim.

Como ativar a criptografia mais forte no Vim

Por padrão, o Vim usa criptografia muito ruim paraesses arquivos. O método de criptografia padrão "zip" ou "pkzip" é compatível com versões anteriores às versões 7.2 e abaixo do vim. Infelizmente, ele pode ser quebrado muito, muito facilmente, mesmo em hardware dos anos 90. Como a documentação oficial coloca: "O algoritmo usado para 'cryptmethod'" zip "é quebrável. Uma chave de 4 caracteres em aproximadamente uma hora, uma chave de 6 caracteres em um dia (em um PC Pentium 133). ”

Você não deve usar a criptografia pkzip para o seu textodocumentos, se você quiser alguma segurança. No entanto, o Vim fornece melhores métodos de criptografia. A versão 7.3 do Vim lançada em 2010 adicionou um método de criptografia "blowfish", que é melhor. A versão 7.4.399 lançada em 2014 incluiu um novo método de criptografia Blowfish que corrige problemas de segurança no método original de criptografia "blowfish" e o denomina "blowfish2".

O único problema é que os arquivos criados commétodos de criptografia mais fortes exigem essas versões mais recentes do Vim. Portanto, se você quiser usar a criptografia "blowfish2", poderá abrir esse arquivo apenas com as versões 7.4.399 e superiores do Vim. Desde que você esteja bem com isso, use o método de criptografia mais forte possível.

Para verificar qual método de criptografia um arquivo está usando, abra o arquivo no vim, pressione a tecla Esc para garantir que você esteja no modo de comando, digite o seguinte comando e pressione Enter.

:setlocal cm?

O "cm" aqui significa "cryptmethod".

Você verá o método de criptografia usado para o arquivo atual exibido na parte inferior da tela do vim.

Para escolher um método de criptografia, execute um dos seguintes comandos. A criptografia "blowfish2" é melhor para segurança.

:setlocal cm=blowfish2
:setlocal cm=blowfish
:setlocal cm=zip

Depois de selecionar seu algoritmo de criptografia, use o :w comando para gravar o arquivo no disco ou no :wq comando para gravar o arquivo no disco e sair.

Na próxima vez que você abrir novamente o arquivo no Vim, elenão reclamará de um algoritmo de criptografia fraco. Você também verá o algoritmo de criptografia selecionado na parte inferior da tela do vim quando abrir o arquivo.

Como alterar ou remover uma senha

Para remover uma senha de um arquivo, abra esse arquivo no Vim e execute o :X comando. Você será solicitado a fornecer uma nova chave de criptografia. Digite a nova senha que você deseja usar aqui. Para remover a senha completamente, deixe o campo de senha em branco e pressione Enter duas vezes.

Salve o arquivo e saia depois com :wq . O arquivo será descriptografado, para que você não seja solicitado a digitar uma senha quando abrir o arquivo no futuro.

Lembre-se de qualquer senha que você definir ou não poderá acessar o conteúdo do arquivo no futuro.