Linux 명령 행에서 gpg 암호화 된 메일을 자동으로 보내려면 어떻게해야합니까? 메일을 자동으로 보내려면 어떻게해야합니까? 나는 이것에

Linux 명령 행에서 gpg 암호화 된 메일을 자동으로 보내려면 어떻게해야합니까?

나는 이것에 약간의 충격을 받았으며, mutt를 사용하려고 시도했지만 대화 형으로 사용되지 않으면 메일을 암호화하지 않습니다.

build in mail 명령을 사용하여 어떻게 할 수 있는지 아는 사람이 있습니까?



답변

같은 것을 시도하십시오

gpg -ea -r "Recipient name" -o - filename | mail -s "Subject line" recipient@example.com

지정된 제목 줄을 사용하여 전자 메일 주소 recipient@example.com의 “받는 사람 이름”(gpg 키링에있는) 이름의 사람에게 “filename”파일의 ASCII로 공개 된 공개 키 암호화 사본을 보냅니다.

또는

echo "Your secret message" | gpg -ea -r "Recipient name" | mail -s "Subject" recipient@example.com

디스크의 일반 텍스트 파일이 아닌 직접 텍스트를 보냅니다.


답변

msmtp를 사용하는 사람들을위한 대안입니다.

cat <<EOF | gpg -ea -r "recipient gpg name" | msmtp -a "account default" recipient@mail.com
Subject: Hello Kosmos
Type your message here, yada yada yada.
EOF

보이


답변

여기 내가 쓴 작은 스크립트가 있습니다. ~ / 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 galenasphaug@gmail.com -r $user | mail -s "$subject" $email


답변