Postfix MX · 3 min read · Sep 30, 2025
Configurando Postfix Como Un MX de Respaldo
En este tutorial, mostraré cómo puedes configurar un servidor de correo Postfix como un intercambiador de correo de respaldo para un dominio, de modo que acepte correos para este dominio en caso de que el intercambiador de correo principal esté fuera de servicio o sea inaccesible y pase los correos al MX principal una vez que este esté disponible nuevamente.
1 Nota Preliminar
Quiero configurar un MX de respaldo para el dominio example.com. En este ejemplo, el MX principal para example.com se llama mx1.example.com (dirección IP 1.2.3.4), así que llamo al MX de respaldo mx2.example.com (dirección IP 1.2.3.5).
He creado registros MX para example.com que se ven así:
example.com. 86400 IN MX 10 mx1.example.com.
example.com. 86400 IN MX 20 mx2.example.com.Es importante que el MX principal tenga un número más bajo (10) y, por lo tanto, una mayor prioridad que el MX de respaldo (20).
Asumo que el Postfix en mx2.example.com ya está instalado y funcionando.
2 Configurando Postfix en mx2.example.com
Para hacer de mx2.example.com un MX de respaldo para el dominio example.com, todo lo que tenemos que hacer es cambiar/agregar tres líneas a /etc/postfix/main.cf:
nano /etc/postfix/main.cfPrimero asegúrate de que smtpd_recipient_restrictions contenga permit_mynetworks y reject_unauth_destination, así que algo como esto estaría bien:
[...]
smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination
[...]Luego debemos agregar example.com al parámetro relay_domains; si aún no hay un parámetro relay_domains en /etc/postfix/main.cf, lo siguiente funcionará:
[...]
relay_domains = $mydestination, example.com
[...]Y finalmente agregamos un parámetro relay_recipient_maps vacío a /etc/postfix/main.cf:
[...]
relay_recipient_maps =
[...](De esta manera no tenemos que especificar una lista de direcciones de correo electrónico válidas para respaldar, lo cual podría ser una tarea desalentadora si tienes que gestionar cientos de cuentas de correo electrónico.)
Hay una cosa importante que debo agregar: No debes listar example.com en los siguientes parámetros en /etc/postfix/main.cf:
- mydestination
- virtual_alias_domains
- virtual_mailbox_domains
Eso es todo. Todo lo que tenemos que hacer ahora es reiniciar Postfix:
service postfix restart3 Pruebas
Para probar el nuevo MX de respaldo, apagamos el MTA (Postfix, Sendmail, Exim, etc.) en mx1.example.com y enviamos un correo electrónico desde algún servidor remoto a una cuenta de example.com (por ejemplo, [email protected]).
Si tienes acceso al registro de correo en el servidor remoto (de envío), ahora deberías encontrar algo como esto:
Jun 6 18:29:16 mail postfix/smtp[17746]: AF814144146: to=<[email protected]>, relay=mx2.example.com[1.2.3.5], delay=1, status=sent (250 2.0.0 Ok: queued as DCA5A1BF40F)Como ves, el correo ha sido enviado a mx2.example.com en lugar de mx1.example.com porque mx1.example.com es inaccesible. Ahora, echemos un vistazo al registro de correo de mx2.example.com:
Jun 6 18:29:16 mx2 postfix/qmgr[3049]: DCA5A1BF40F: from=<[email protected]>, size=892, nrcpt=1 (queue active)
Jun 6 18:29:16 mx2 postfix/smtpd[3051]: disconnect from mail.blabla.tld[1.2.3.6]
Jun 6 18:29:16 mx2 postfix/smtp[3057]: connect to mx1.test1.de[1.2.3.4]: Connection refused (port 25)
Jun 6 18:29:16 mx2 postfix/smtp[3057]: DCA5A1BF40F: to=<[email protected]>, relay=none, delay=0.07, delays=0.03/0.02/0.01/0, dsn=4.4.1, status=deferred (connect to mx1.test1.de[1.2.3.4]: Connection refused)mx2.example.com ha aceptado el correo y ha intentado conectarse a mx1.example.com para entregarlo al MX principal. Debido a que el MX principal está fuera de servicio, mx2.example.com no puede entregar el correo y lo mantiene en la cola de correo hasta que mx1.example.com esté disponible nuevamente.
Ahora iniciamos el MTA en mx1.example.com nuevamente. El MX de respaldo no entregará inmediatamente el correo en cola, pero después de algunos minutos deberías ver algo como esto en el registro de correo de mx2.example.com:
Jun 6 18:56:44 mx2 postfix/qmgr[3080]: DCA5A1BF40F: from=<[email protected]>, size=892, nrcpt=1 (queue active)
Jun 6 18:56:45 mx2 postfix/smtp[3083]: DCA5A1BF40F: to=<[email protected]>, relay=mx1.example.com[1.2.3.4]:25, delay=1648, delays=1648/0.09/0.4/0.12, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 167995B0109)El correo ha sido entregado al MX principal donde puedes ver esto en el registro de correo:
Jun 6 18:56:45 mx1 postfix/local[4963]: 167995B0109: to=<[email protected]>, orig_to=<[email protected]>, relay=local, delay=0.54, delays=0.08/0.02/0/0.43, dsn=2.0.0, status=sent (delivered to command: /usr/bin/procmail -f-)Así que no se perdieron correos mientras mx1.example.com estaba fuera de servicio, y los usuarios pueden continuar recuperando sus correos de mx1.example.com.
4 Enlaces
- Postfix: http://www.postfix.org
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.