Verschlüsselte Nachrichten aus Scripten versenden

Möchte man Mails die von Cron oder anderen Scripten versendet werden verschlüsseln so geht das recht einfach. Eine ausführlichere Beschreibung finden man hier

Als erstes den öffentlichen Schlüssel von ASCII in binär umwandeln.

gpg --dearmor < pubkey.asc > your-pubkey.bin

Hier ein kleiner Test. Erstelle eine Textdatei, verschlüssele das mit gpg und versende es mit sendmail

echo "some super secret text" > /tmp/message.txt
gpg --batch --armor --trust-model always --no-default-keyring --keyring /your-pubkey.bin --recipient your@address.de --encrypt < /tmp/message.txt > /tmp/message.txt.pgp
echo -e "From: someone@address.de\nTo: some.else@address.de\nSubject: test 123" | cat - /tmp/message.txt.pgp | sendmail -it

und schon hat man den verschlüsselten Text in der Inbox

Möchte man das jetzt in Cron verwenden so fügt man in Crontab die folgenden Zeilen an den Anfang

 MAILTO=you@address.de
 GPG_CMD="/usr/bin/gpg --batch --armor --trust-model always --no-default-keyring --keyring /root/your-pubkey.bin --recipient your@address.de --encrypt"

und an das Ende der Befehle in hängt man noch ein

  2>&1 | $GPG_CMD

an.