Envío de correo electrónico mediante línea de comandos
Existen múltiples comandos que nos permiten enviar correos electrónicos utilizando la línea de comandos. La forma tradicional en que esto se ha hecho, normalmente para comprobar si un servidor de correo está funcionando correctamente ha sido estableciendo una conexión mediante telnet y enviando los comandos SMTP en crudo.
telnet
Por otra parte, como hemos mencionado, podemos utilizar comandos y programas específicos de línea de comandos y que sirven para este propósito.
ssmtp
En este caso utilizamos un fichero de texto que contiene los comandos crudos de SMTP que ya utilizamos con telnet, y además el contenido del correo en si.
ssmtp "<destinatario@decorreo.com>" < mail.txt
sendmail
echo "Prueba de correo" | sendmail "<destinatario@decorreo.com>"
Y si usamos el fichero de texto del ejemplo anterior
echo "Prueba de correo" | sendmail -v "<destinatario@decorreo.com>" < mail.txt
curl
curl --url "smtps://smtp.gmail.com:465" --ssl-reqd --mail-from "<remitente@decorreo.com>" --mail-rcpt "<destinatario@decorreo.com>" --upload-file mail.txt --user "<usuariogmail:contraseñagmail>"
swaks
swaks --header "Prueba de correo" --to "<destinatario@decorreo.com>" -s smtp.gmail.com:587 -tls -au "<usuariogmail>" -ap "<contraseñagmail>"
swaks --header "Prueba de correo" --to "<destinatario@decorreo.com>" -s smtp.gmail.com:587 -tls -au "<usuariogmail>" -ap "<contraseñagmail>" --attach -d ./mail.txt
mutt
mutt -s "Prueba de correo" "<destinatario@decorreo.com>" < /dev/null
mutt -s "Prueba de correo" "<destinatario@decorreo.com>" -a mail.txt < /dev/null
mutt -s "Prueba de correo" "<destinatario@decorreo.com>" -a mail.txt < email.html
mailx
mailx -s "Prueba de correo" < /dev/null "<destinatario@decorreo.com>"
echo "Cuerpo del correo" | mailx -s "Prueba de correo" "<destinatario@decorreo.com>"
mail -a "Content-Type: text/html" -s "Prueba de correo" < email.html "<destinatario@decorreo.com>,<destinatario2@decorreo.com>"
openssl
openssl s_client -connect smtp.gmail.com:465 -crlf -ign_eof
EHLO localhost
AUTH PLAIN "passwordhash"
MAIL FROM: <remitente@decorreo.com>
RCPT TO: <destinatario@decorreo.com>
DATA
Subject: Prueba de correo
Cuerpo de correo
.
Un fichero mail.txt puede tener el siguiente contenido:
From: remitente@decorreo.com
To: destinatario@decorreo.com
Subject: Prueba de correo
Content-Type: text/html; charset="utf8"
<html>
<body>
<div style="
background-color:
#abcdef; width: 300px;
height: 300px;
">
</div>
Aquí se puede añadir contenido de correo.
</body>
</html>
Por supuesto esto son sólo ejemplos y hay que adaptar los parámetros a las necesidades individuales.