Como criptografar mensagens de e-mail armazenadas na caixa de entrada

Como criptografar mensagens de e-mail armazenadas na caixa de entrada

Tenho mais de 12.000 mensagens de e-mail em minha CAIXA DE ENTRADA, todas em texto simples, algumas dessas mensagens de e-mail vêm com anexos. Há semanas que procuro uma maneira de criptografar essas mensagens de e-mail de texto simples para mensagens criptografadas.

Por favor, não sugira criptografia PGP para e-mails enviados, pois estou totalmente ciente de como criptografar novas mensagens compostas. Estou falando aqui de e-mails existentes que ficam armazenados na caixa de entrada há anos em texto simples.

Estou procurando uma maneira que me permita criptografá-los em massa. Baixei todas as minhas mensagens e as exportei para o formato EML, e posso convertê-las para qualquer formato que me ajude a criptografar essas mensagens.

Procurando criptografar apenas o corpo da mensagem e não o assunto.

Obrigado

Responder1

Eu tive o mesmo problema e encontrei uma boa solução funcional hoje.

É baseado em uma configuração de procmail que encontrei. Originalmente, ele criptografa os e-mails recebidos em vez dos e-mails existentes que já estão na sua caixa de entrada:

https://www.j3e.de/pgp-mime-encrypt-in-procmail.html(Obrigado por isso Bjoern)

Modifiquei-o para funcionar como um script com arquivos de caixa de correio existentes em vez de procmail (arquivos de entrada).

Esses comandos são pequenos, simples e usam uma ferramenta padrão 'formail' para lidar com cabeçalhos e corpo de forma limpa.

Primeiro você deve criar os dois arquivos .gpg-mime-start e .gpg-mime-end conforme descrito na URL com procmail! E você deve configurar sua linha de comando gpg com suas chaves normalmente.

Este é o arquivo .gpg-mime-start:

--MfFXiAuoTsnnDAfX
Content-Type: application/pgp-encrypted
Content-Disposition: attachment

Version: 1

--MfFXiAuoTsnnDAfX
Content-Type: application/octet-stream
Content-Disposition: inline; filename="msg.asc"

Tem que haver uma linha vazia no final!

Este é o arquivo .gpg-mime-end:

--MfFXiAuoTsnnDAfX

Tem que haver uma linha vazia no início!

Aqui está o script modificado (gpgmailfile.sh):

#!/bin/sh

MYHDRS=`cat $1 | formail -XContent-Type: -XContent-disposition: -XContent-transfer-encoding:`

cat $1 | formail -X "" | formail -I 'Content-Type: multipart/encrypted; protocol="application/pgp-encrypted";boundary="MfFXiAuoTsnnDAfX"' -I Content-transfer-encoding: -I Content-disposition:

{ cat ~/.gpg-mime-start ; { echo "$MYHDRS" ; echo ; cat $1 | formail -I "" ; } | gpg --batch --quiet --always-trust -a -e -R 'Firstname Lastname <[email protected]>' ; cat ~/.gpg-mime-end; }

Substituir...

Firstname Lastname <[email protected]>

...no script com o endereço da sua chave gpg (ou use "-r subscription.." ).

Defina as permissões do script com chmod a+x gpgmailfile.sh

Por exemplo, você pode executar o script para um único e-mail da pasta de e-mail principal para a subpasta "enc" (primeiro crie a pasta "enc" em seu cliente de e-mail):

./gpgmailfile.sh /home/user/Maildir/cur/"file123" > /home/user/Maildir/.enc/cur/"file123"

Se você deseja criptografar todos os e-mails na pasta principal, use este script extra (mude o caminho para o primeiro script se não estiver em /root/):

#!/bin/sh

FILES=/home/user/Maildir/cur/
cd $FILES
for f in *
do
  echo "Processing $f ..."
  /root/gpgmailfile.sh /home/user/Maildir/cur/"$f" > /home/user/Maildir/.enc/cur/"$f"
done

Modifique-o para funcionar com outras pastas.

informação relacionada