Enviar e-mails facilmente a partir da linha de comando

Esta dica é baseada na dica de Ryan Yonzon: https://coderwall.com/p/ez1x2w

Acabei de adicionar algumas correções que precisava fazer para executar no Ubuntu.

Preparando

Instalando dependências:

$ sudo apt-get install heirloom-mailx libnss3-tools sendmail -y

Criação do diretório “certs” e importação do arquivo cert do servidor do Gmail:

$ mkdir ~/.certs

$ echo
-n | openssl s_client -connect smtp.gmail.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/gmail.crt

$ certutil
-A -n "Google Internet Authority" -t "C,," -d ~/.certs -i ~/.certs/gmail.crt

Configurando

Crie o arquivo ~ / .mailrc e adicione a seguinte configuração (atualizando de acordo com sua conta):

account gmail {
set smtp-use-starttls
set ssl-verify=ignore
set smtp-auth=login
set smtp=smtp://smtp.gmail.com:587
set from="username@gmail.com(John Doe)"
set smtp-auth-user=username@gmail.com
set smtp-auth-password="s0m3p@zzW0rD"
set ssl-verify=ignore
set nss-config-dir=/home/path/to/.certs
}

Enviar e-mails

$ echo "Email content" | mailx -A gmail -s "Email subject" destination@email.com