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

O editor de texto vim, uma ferramenta padrão incluída no Linux 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.

Certifique-se de que o Vim do seu sistema tenha suporte para criptografia

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

Você pode precisar instalar a versão completa do vim para obter este 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 macOS inclui suporte para criptografia, então você não precisa instalar mais nada em um Mac. Basta iniciar uma janela de terminal em Finder> Aplicativos> Utilitários> Terminal e os comandos funcionarão no macOS da mesma forma que no Linux.

Como criptografar um arquivo com uma senha

O processo básico é relativamente simples se você souber usar o vi . Se não o fizer, 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 de inserção”, onde 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.

Recomendado:  Como bloquear o seu PC com Windows 11

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

vi exemplo

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 / caminho / para / arquivo

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

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

O Vim avisará 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 arquivo de texto atual 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 está no modo de comando e, em seguida, digite :wqe 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“ – o Vim solicitará a senha associada ao arquivo.

Se você digitar a senha incorreta, o conteúdo do arquivo será um lixo.

Recomendado:  Quanta velocidade de download você realmente precisa?

Aviso : não salve o arquivo se você abri-lo e ver algo sem sentido. Isso salvará os dados corrompidos de volta no arquivo e substituirá os dados criptografados. Basta executar :qpara sair do Vim sem salvar o arquivo no disco.

Há um 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 / caminho / para / arquivo

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

Como habilitar criptografia mais forte no Vim

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

Você não deve usar a criptografia pkzip para seus documentos de texto se quiser qualquer segurança. No entanto, o Vim fornece métodos de criptografia melhores. 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 de criptografia “blowfish” original e o chama de “blowfish2”.

Recomendado:  Como solucionar os problemas mais comuns do Touch ID

O único problema é que os arquivos que você cria com métodos de criptografia mais fortes exigem essas versões mais recentes do Vim. Portanto, se você quiser usar a criptografia “blowfish2”, só poderá abrir esse arquivo com as versões do Vim 7.4.399 e superiores. Contanto que você esteja bem com isso, você deve usar 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ê está no modo de comando, digite o seguinte comando e pressione Enter.

: setlocal cm?

O “cm” aqui significa “método criptográfico”.

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 = baiacu2

: setlocal cm = baiacu

: setlocal cm = zip

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

Na próxima vez que você reabrir o arquivo no Vim, ele não reclamará de um algoritmo de criptografia fraco. Você também verá o algoritmo de criptografia selecionado na parte inferior da tela do vim ao 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 deseja usar aqui. Para remover a senha completamente, deixe o campo da senha em branco e pressione Enter duas vezes.

Salve o arquivo e saia em seguida com :wq . O arquivo será descriptografado, portanto, você não será solicitado a inserir uma senha quando abrir o arquivo no futuro.

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