Cookbook: enviar/recibir correo a servidores de terceros
Objetivo
Después de recibir un correo en el frontend este debe aceptarse como local, pero después de pasar todos los filtros este no debe entregarse al servidor backend sinó a un tercer servidor, en el caso de un ISP este servidor puede ser un servidor de correo del cliente final. O sea, que podemos redirigir ciertos dominios hacía rutas determinadas.
También se describe la posibilidad inversa, o sea, que un servidor de terceros quiera usar el frontend como smart-relay, o sea, que todo su correo pase por el frontend. Como evitar problemas con las direcciones que estan en listas RBL y otros problemas similares, la idea es poner la IP del servidor de terceros en la lista de mynetworks, o sea, como si se tratará de un servidor local legítimo.
Cambios en el servidor backend: envio
- Editar fichero /opt/mail-gateway/config.conf
- añadir el nuevo dominio y la dirección donde se deben entregar los correos dirigidos a el, ejemplo:
... [transports] example.com=[1.1.1.1]:25 ...
- Guardar el fichero
- Reiniciar el servicio transport y local_domains:
cd /opt/mail-gateway ./transport.sh restart ./verify_domain.sh restart
- Para comprobar que los demonios estan funcionando bien, podemos hacer:
cd /opt/mail-gateway ./transport.sh status ./verify_domain.sh status
Cambios en el servidor backend: recepción
Estos pasos son necesarios, por ejemplo, para evitar problemas con los filtros RBL, de esta forma aceptamos el correo de las IPs de los servidores de terceros de confianza como si fuera correo propio. Esto no quiere decir que no pase el resto de filtros del sistema, simplemente que será tratado igual que si el correo se hubiera generado en local.
- añadir la IP o el hostname del servidor remoto (ej. exchange del cliente) en /opt/mail-gateway/config.conf
;local networks for command mynetworks in postfix [mynetworks] ... 1.1.1.1=ip ; ip estática remote_site_with_dynamic_ip.dyndns.com=hostname ; ip dinámica
- Guardar el fichero
- Reiniciar mynetworks
cd /opt/mail-gateway ./mynetworks.sh restart
- Para comprobar que los demonios estan funcionando bien, podemos hacer:
cd /opt/mail-gateway ./mynetworks.sh status
