Bash - Enviar correo electrónico a través de Amazon SES

Bash - Enviar correo electrónico a través de Amazon SES

Amazon SES (servicio de correo electrónico simple) es un proveedor de servicios SMTP popular similar a SendGrid, MailChimp, etc. Para usar SES, debe registrarse para una cuenta de Amazon Web Services. Que es el proveedor de servicios basado en la nube líder. Según el registro posterior, debe agregar su tarjeta de crédito para la facturación. El SES predeterminado permite enviar 2000 correos electrónicos/día libremente. Después del límite predeterminado, se le cobrará como pago por uso.

En esta publicación de blog, aprenderá a enviar correos electrónicos a través de Amazon SES o cualquier otro proveedor de SMTP desde un shell o script bash.

Requisito previo

  • En este tutorial, utilizamos la línea de comando SendEmail SMTP Client para enviar correos electrónicos. Por lo tanto, debe haber instalado Sendmail en su sistema.
  • Debe haber verificado la dirección de correo electrónico o el nombre de dominio bajo identidades verificadas en Amazon SES. Cuando se verifica el dominio, puede usar cualquier dirección de correo electrónico mientras envía correos electrónicos
  • Todas las nuevas cuentas en Amazon SES están en modo Sandbox para fines de seguridad. Debe enviar una solicitud para admitir la conversión de la cuenta SES al modo de producción.

Shell script para enviar correos electrónicos a través de SMTP

He escrito un pequeño script de shell que envía correos electrónicos a través de los servidores SMTP remotos. Utiliza el cliente SendEmail SMTP. Use cualquiera de los proveedores SMTP populares (como SendGrid, Amazon SES y MailChimp) con este script de shell. También puede integrar este código de script de shell en sus scripts de shell existentes para enviar correos electrónicos correctamente.

#!/usr/bin/env Bash ## Detalles de configuración de SMTP SMTP_HOST = "Correo electrónico-smtp.US-East-1.amazonaws.com "smtp_port =" 587 "smtp_user =" xxxxxxxxxxxxxxxxx "smtp_pass =" xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx "correo electrónico_from =" notificació[email protected] "correo electrónico_to =" su correo electró[email protected] "Sujeto =" ADVERTENCIA: Repo público GitHub encontrado "## Enviando correo electrónico Cat MailContent.txt | sendEmail -l /tmp /correo electrónico.LOG \ -F $ CORREAX_FROM \ -U $ SUTMET \ -T $ CORREATE_TO \ -S $ SMTP_HOST: $ smtp_port \ -o tls = yes \ -xu $ smtp_user \ -xp $ Smtp_pass
1234567891011121314151617181920212223#!/usr/bin/env Bash ## Detalles de configuración de SMTP SMTP_HOST = "Correo electrónico-smtp.US-East-1.amazonaws.com "smtp_port =" 587 "smtp_user =" xxxxxxxxxxxxxxxxx "smtp_pass =" xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx "#from =" [correo electrónico protegido] "correo electrónico_to =".txt | sendEmail -l /tmp /correo electrónico.LOG \ -F $ CORREAX_FROM \ -U $ SUTMET \ -T $ CORREATE_TO \ -S $ SMTP_HOST: $ smtp_port \ -o tls = yes \ -xu $ smtp_user \ -xp $ Smtp_pass

En el script anterior, el Contenido de correo.TXT El archivo contiene el contenido del cuerpo de correo.

Conclusión

Los scripts de shell son una parte importante de la administración del sistema. Nos ayuda a automatizar tareas rápidamente, como programar copias de seguridad, archivar registros y recopilar datos, etc. A veces también estamos obligados a enviar correos electrónicos de scripts de shell. En este tutorial, ha aprendido a enviar correos electrónicos a través del servidor de Amazon SES. Incluso usted también puede usar este script con cualquier otro proveedor de SMTP.