Как зашифровать сохраненные входящие сообщения электронной почты

Как зашифровать сохраненные входящие сообщения электронной почты

У меня в почтовом ящике INBOX более 12000 сообщений электронной почты, все в виде обычного текста, некоторые из этих сообщений с вложениями. Я искал неделями способ зашифровать эти сообщения электронной почты из обычного текста в зашифрованные сообщения.

Пожалуйста, не предлагайте шифрование PGP для исходящих писем, так как я прекрасно знаю, как шифровать новые составленные сообщения. Я говорю о существующих письмах, которые годами хранятся в почтовом ящике в виде обычного текста.

Я ищу способ, который позволит мне зашифровать их оптом. Я скачал все свои сообщения и экспортировал их в формат EML, и я могу преобразовать их в любой формат, который поможет мне зашифровать эти сообщения.

Требуется зашифровать только текст сообщения, но не тему.

Спасибо

решение1

У меня была та же проблема, и сегодня я нашел хорошее рабочее решение.

Он основан на настройке procmail, которую я нашел. Изначально он шифрует входящую почту вместо существующих писем, которые уже находятся в вашем почтовом ящике:

https://www.j3e.de/pgp-mime-encrypt-in-procmail.html(Спасибо за это, Бьорн)

Я изменил его так, чтобы он работал как скрипт с существующими файлами Mailbox вместо procmail (входящие файлы).

Эти команды небольшие, простые и используют стандартный инструмент «formail» для корректной обработки заголовков и тела сообщения.

Сначала вам нужно создать два файла .gpg-mime-start и .gpg-mime-end, как описано в URL с procmail! И вам нужно настроить командную строку gpg с вашими ключами, как обычно.

Это файл .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"

В конце должна быть пустая строка!

Это файл .gpg-mime-end:

--MfFXiAuoTsnnDAfX

В начале должна быть пустая строка!

Вот измененный скрипт (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; }

Заменять...

Firstname Lastname <[email protected]>

...в скрипте с адресом вашего ключа gpg (или используйте "-r signature.." ).

Установите права доступа к скрипту с помощью chmod a+x gpgmailfile.sh

Например, вы можете запустить скрипт для одного письма из основной почтовой папки в подпапку «enc» (сначала создайте папку «enc» в своем почтовом клиенте):

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

Если вы хотите зашифровать все письма в основной папке, используйте этот дополнительный скрипт (измените путь к первому скрипту, если он не находится в /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

Измените его для работы с другими папками.

Связанный контент