Envía eventos de sistema por email - Configuración SSMTP

Fecha publicación
#
4
Dificultad
Básico
3 more properties
Publicado
tags
ssmtp, ubuntu, sysadmin, iot gw, iot gateway, industry4.0, industry 4.0, industria 4.0


Contenidos

TL;DR

Introducción

Si, ya sé que el protocolo se llama SMTP (Simple Mail Transfer Protocol) y no SSMTP. Pero quizá lo que no sabías es que SSMTP es una aplicación para Linux que nos permite enviar los emails de sistema contra un relay host de forma automática y sin tener que correr ningún servicio.
¿Cuantos procesos programados con crontab has tenidos fallando sin saberlo por no recibir los emails propios de su ejecución?
Gracias a esta herramienta esto ya no te va a suceder de nuevo. Además puedes configurar diferentes watchdog para servicios sin tener que preocuparte en configurar las notificaciones por correo, ya que el sistema sabe perfectamente que hacer con ese email.
Por no hablar, de lo cómodo que es mandar un fichero, o la salida de un comando, simplemente con una pipe.
En pocos minutos este vídeo de mostrará una buena práctica cuando instales un nuevo sistema Linux.

Instalar y configurar SSMTP

  1. Instalar ssmtp
    Bash
    apt install ssmtp
  2. Crear cuenta en Sparkpost EU: https://app.eu.sparkpost.com/join
  3. Crear una API KEY: https://app.eu.sparkpost.com/account/api-keys

  4. Ya tenemos una API KEY para autenticarnos desde SMTP:
    Bash
    a524XXXXXXX
  5. /etc/ssmtp/revaliases
    Bash
    root:iot-gw@industry40.systems:smtp.eu.sparkpostmail.com:587
5. /etc/ssmtp/ssmtp.conf
Bash
mailhub=smtp.eu.sparkpostmail.com:587
AuthUser=SMTP_Injection
AuthPass=a524XXXXXXX
UseSTARTTLS=YES
AuthMethod=LOGIN
Root=industry40systems@gmail.com
6. Configuración de registros DNS
Dentro de Sparkpost hay que ir a "Sending Domains" y añadir un nuevo dominio. En nuestro caso se puede observar que hemos añadido "industry40.systems" y un subdominio para el bounces.
La interface de usuario de sparkpost nos mostrará si hemos configurado bien el DNS. En esencia lo más importante es crear el registro DKIM correspondiente en nuestro DNS.
Hay que tener en cuenta que también se debe configurar el dominio de bounces tal como nos indicará la interface de usuario de sparkpost.

Probar envio de emails

  1. Instalar paquete bsd-mailx
    Bash
    apt install bsd-mailx
  2. Probar envio, con el siguiente comando podrás ver la negociación del protocolo SMTP con el servidor
    Bash
    # desde usuario root ejecutar
    ls / | mail -v TU_CORREO