Si no disponemos de una dirección IP estática, y queremos montar un servidor de correo, lo más sencillo es usar un proveedor externo para reenviarlos, ya que sin la dirección estática muchos proveedores marcarían nuestros correos como spam o directamente los rechazarían.

Vamos a instalar y configurar un servidor SMTP con Postfix y para enviar correos con nuestra cuenta de Gmail.

Disponer de este servicio nos va a permitir:

  • Enviar correos desde nuestro servidor usando nuestra cuenta de Gmail.
  • Recibir notificaciones de nuestro sistema a nuestra cuenta de correo en Gmail.
  • Si disponemos de un dominio en Google Domains, podemos usar nuestro nombre de dominio en los correos salientes: tuemail@tudominio.com.

Instalación Postfix

Instalamos Postfix con el siguiente comando:

$ sudo apt install postfix libsasl2-modules

Durante la instalación, una interfaz ncurses nos guiará por la configuración inicial:

  1. Tipo de configuración: sitio de Internet
  2. Nombre del correo: tu_hostname

Generar contraseña de aplicación en Gmail

Necesitamos generar una contraseña para acceder al servidor SMTP de nuestra cuenta de Gmail.

  1. Accedemos al siguiente enlace: google app passwords
  2. En la opción seleccionar aplicación: Correo.
  3. En la opción seleccionar dispositivo: Otra, añadimos el nombre que queramos, por ejemplo Postfix.
  4. Guardamos en un lugar seguro la contraseña generada, esta nos permitirá autenticarnos con Postfix en los servidores SMTP de google.

Vamos a configurar nuestro usuario de Gmail y la contraseña obtenida, para que Postfix pueda utilizarla. Editamos el fichero /etc/postfix/sasl/sasl_passwd (username es nuestro usuario en google y password es la contraseña obtenida en los pasos anteriores):

[smtp.gmail.com]:587 username@gmail.com:password

Generamos la base de datos para Postfix y aseguramos el contenido con los siguientes comandos:

$ sudo postmap /etc/postfix/sasl/sasl_passwd
$ sudo chmod 0600 /etc/postfix/sasl/sasl_passwd
$ sudo chmod 0600 /etc/postfix/sasl/sasl_passwd.db

Configurar Postfix para usar Gmail relay SMTP

Ahora tenemos que indicarle a Postfix, que todo el correo saliente lo envíe a los servidores SMTP de goole y se identifique con nuestro usuario.

Editamos el fichero /etc/postfix/main.cf:

relayhost = [smtp.gmail.com]:587
mydestination = localhost.localdomain, localhost
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl/sasl_passwd
smtp_tls_security_level = encrypt
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

Para finalizar la configuración, reiniciamos el servicio:

sudo systemctl restart postfix

Enviar un correo con Postfix

Una vez temeos todo configurado, probamos el envió de correos, utilizamos el comando sendmail que viene incluido en postfix:

$ sendmail destinatario@dominio.com

From: nosotros@gmail.com
Subject: Email de prueba
Esto es un correo de pruebas.
.

Y con esto sencillos pasos. podemos enviar correos desde nuestro servidor.