web-dev-qa-db-ja.com

Linuxコマンドラインからgpg暗号化メールを自動的に送信するにはどうすればよいですか?

Linuxコマンドラインからgpg暗号化メールを自動的に送信するにはどうすればよいですか?

私はこれに少し困惑しています。muttを使用してみましたが、インタラクティブに使用しない限りメールは暗号化されません。

Build in mailコマンドを使用してこれを行うことができるかどうか誰かが知っていますか?

21
Rwky

次のようなものを試してください

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

ファイル「filename」のASCIIで保護された公開鍵暗号化されたコピーを、指定された件名の電子メールアドレス[email protected]の「Recipientname」(gpgキーリングに含まれる)という名前の人に送信します。

または

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

ディスク上のクリアテキストファイルからではなく、テキストを直接送信します。

25
gbroiles

これが私が書いた小さなスクリプトです。それを〜/ username/bin/gpgmailに保存し、chmod 755 gpgmailを実行します。 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
0
clownfishhuman

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à

0
qhaz