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.