En este tutorial, te explicaré cómo instalar (es el más fácil) y configurar Postfix en Ubuntu como un retransmisor de correo electrónico para enviar correos electrónicos desde aplicaciones, equipos (copiadora, conmutador, etc.).
Este tipo de servidor se suele utilizar en empresas para enviar correos electrónicos desde diferentes equipos y software, incluso si tienes una solución de mensajería interna como Exchange, recomiendo configurar un repetidor de terceros para enviar mensajes.
Vamos a configurar un servidor MTA (Mail Transfert Agent).
Instalación de Postfix en Ubuntu
Esta parte es bastante sencilla, desde una terminal ingresa el siguiente comando:
sudo apt install postfix
Confirme la instalación de Postfix:
Durante la instalación, un asistente le pregunta para qué uso debe configurarse Postfix, abandone el sitio web y confirme .
El asistente también le pedirá que proporcione el nombre FQDN del servidor.
Espere mientras instala Postfix…
Ya está instalado Postfix, pasaremos ahora a configurarlo.
Configurando Postfix
Ahora pasaremos a configurar Postfix.
Los archivos de configuración se encuentran en la siguiente ubicación: /etc/postfix
El archivo que nos interesa en este momento es el archivo main.cf que contiene los elementos de configuración.
El primer elemento que configuraremos es el parámetro mynetworks, por defecto Postfix sólo autoriza el acceso a su servicio en direcciones locales (127.0.0.0).
Comente la línea actual de mynetworks:
#mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
Agregue esta línea a continuación:
mynetworks = 0.0.0.0/0
Reinicie el servicio Postftix:
sudo systemctl restart postfix
El servidor postfix ya está operativo, por el momento los correos electrónicos se transferirán mediante registros DNS MX.
Veremos ahora diferentes elementos de configuración de postfix que se pueden encontrar en las empresas.
Transferir correos electrónicos a un servidor de retransmisión
Si ya tienes un repetidor de correo y quieres reenviar mensajes a este repetidor, debes indicar la dirección IP del repetidor o el nombre DNS en el parámetro Relayhost.
Abra el archivo /etc/postfix/main.cf.
Buscar:
relayhost =
Indique aquí la dirección del relé:
relayhost = relay-smtp.dom.com
Reinicie el servicio Postftix:
sudo systemctl restart postfix
Transferencia basada en dominio
Aquí veremos cómo transferir dependiendo del dominio del destinatario a un servidor de correo y, en caso contrario, enviar a otro repetidor que no estaría en DMZ, por ejemplo.
Para ilustrar la configuración, aquí está el diagrama:
Los mensajes para el dominio corp-a.com deben enviarse al servidor Exchange 192.168.100.10 y los mensajes para el dominio corp-b.io se envían a los servidores Exchange 192.168.100.20 o 192.168.100.21. Todos los demás mensajes se envían al MTA en DMZ 192.168.200.3 para ser enviados a través de Internet.
Para ello utilizaremos un mapa de transporte (transport_map).
Abra el archivo de configuración: /etc/postfix/main.cf
Antes : # TLS parameters
Agregar :
# Transport
transport_maps = hash:/etc/postfix/transport
En la carpeta /etc/postfix, cree un archivo llamado transporte.
Abra el archivo de transporte y pegue el contenido a continuación:
corp-a.com smtp:192.168.100.10
corp-b.io smtp:192.168.100.20, 192.168.100.21
* relay:[192.168.200.3]:25
La configuración del archivo de transporte debe adaptarse a su entorno.
Cree el índice de transporte para Postfix:
sudo postmap /etc/postfix/transport
Reiniciar Postfix:
sudo systemctl restart postfix
Ahora postfix enrutará los mensajes según el dominio al servidor configurado; de lo contrario, se enviará a otro retransmisor.
Si desea enviar directamente desde Postfix reemplace:
* relay:[192.168.200.3]:25
Por:
* smtp
Al utilizar transport_maps, se recomienda no configurar el parámetro Relayhost, es decir, dejarlo vacío.
Después de cada modificación del archivo de transporte, debes reconstruir el índice con el comando sudo postmap /etc/postfix/transport y reiniciar el servicio Posfix.
Solución de problemas de Postfix
Para comprobar el correcto funcionamiento encontrará los logs en el fichero : /var/log/mail.log
Para mostrar la lista de mensajes pendientes : sudo mailq
Para purgar la cola : sudo postqueue -f
Algunos enlaces en Postfix para ir más allá si lo deseas: