Jak mogę automatycznie wysyłać zaszyfrowaną pocztę gpg z wiersza poleceń systemu Linux?

21

Jak mogę automatycznie wysyłać zaszyfrowaną pocztę gpg z wiersza poleceń systemu Linux?

Jestem trochę zaskoczony tym, próbowałem użyć mutta, ale nie szyfruje poczty, chyba że jest używany interaktywnie.

Czy ktoś wie, czy możesz użyć komendy build in mail, aby to zrobić w jaki sposób?

Rwky
źródło

Odpowiedzi:

25

spróbuj czegoś takiego

gpg -ea -r "Recipient name" -o - filename | mail -s "Subject line" [email protected]

aby wysłać zbrojoną ascii, zaszyfrowaną kluczem publicznym kopię pliku „nazwa pliku” osobie o nazwie „Nazwa odbiorcy” (która znajduje się w twoim pliku kluczy gpg) na adres e-mail [email protected] z określonym tematem.

lub

echo "Your secret message" | gpg -ea -r "Recipient name" | mail -s "Subject" [email protected]

aby wysłać tekst bezpośrednio zamiast z pliku czystego tekstu na dysku.

gbroiles
źródło
Czy to również podpisuje wiadomość (kluczem prywatnym)?
teeks99,
1
Dodaj do tego polecenie „s” - np. Gpg -eas -r „John Smith”
gbroiles
0

Alternatywa dla osób używających msmtp.

cat <<EOF | gpg -ea -r "recipient gpg name" | msmtp -a "account default" [email protected] Subject: Hello Kosmos Type your message here, yada yada yada. EOF

voilà

qhaz
źródło
0

Oto mały skrypt, który napisałem. Zapisz go w ~ / nazwa użytkownika / bin / gpgmail i uruchom chmod 755 gpgmail. Uruchom za pomocą gpgmail.

#!/bin/bash
# Send encrypted email
# Requires gpg and mail to be setup

echo "Available keys:"
gpg --list-keys
# Gather variables
echo "Enter public key of recipient:"
read user
echo "Enter email:"
read email
echo "Enter subject:"
read subject
echo "Enter message:"
read message

# Pipe the echoed message to gpg, sign and encrypt it to ascii (-eas), include your key so you can read it,
# include recipients key, pipe to mail with the (unencrypted) subject, send to the given email.
echo "$message" | gpg2 --no-emit-version -eas -r [email protected] -r $user | mail -s "$subject" $email
clownfishhuman
źródło