Comment puis-je envoyer automatiquement du courrier crypté gpg à partir de la ligne de commande linux?


21

Comment puis-je envoyer automatiquement du courrier crypté gpg à partir de la ligne de commande linux?

Je suis un peu perplexe sur celui-ci, j'ai essayé d'utiliser mutt mais il ne crypte pas le courrier sauf s'il est utilisé de manière interactive.

Est-ce que quelqu'un sait si vous pouvez utiliser la commande build in mail pour le faire?

Réponses:


25

essayez quelque chose comme

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

pour envoyer une copie du fichier "nom_fichier" à armure ascii et à clé publique cryptée à une personne nommée "nom du destinataire" (qui se trouve dans votre trousseau de clés gpg) à l'adresse e-mail recipient@example.com avec la ligne d'objet spécifiée.

ou

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

pour envoyer du texte directement plutôt qu'à partir d'un fichier en texte clair sur le disque.


Est-ce que cela signe également le message (avec votre clé privée)?
teeks99

1
Ajoutez "s" à la commande gpg pour cela - par exemple, gpg -eas -r "John Smith"
gbroiles

0

Une alternative pour ceux qui utilisent 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

voilà


0

Voici un petit script que j'ai écrit. Enregistrez-le dans ~ / username / bin / gpgmail et exécutez chmod 755 gpgmail. Exécutez avec 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
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.