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


21

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

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

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

답변:


25

같은 것을 시도하십시오

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

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


그 메시지에도 (개인 키로) 서명합니까?
teeks99

1
그의 GPG 명령에 "s"를 추가 - 예를 들어, GPG -eas -r "존 스미스"
gbroiles

0

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

보이


0

여기 내가 쓴 작은 스크립트가 있습니다. ~ / 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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.