
Sé que la forma de deshabilitar toda la entrega local es eliminar el dominio de "midestino", lo que hará que todo el correo se transmita a través de cualquier retransmisión que haya configurado. Pero quiero que Postfix acepte todo el correo de GApps para su entrega local a Dovecot, pero que transmita todo el correo generado localmente a GApps.
Ej: tengo un correo web ejecutándose en el servidor, usando el postfix local.[correo electrónico protegido]envía un correo electrónico a[correo electrónico protegido]. Si el usuario2 existe localmente, postfix entrega localmente, no existe; podría agregar un relé alternativo que enviaría ese correo a GApps. Pero quiero que Postfix siempre transmita estos correos a GApps (que enviará estos correos posteriormente a Postfix para su entrega local) independientemente de la disponibilidad local. Para poder tener una especie de modelo en cascada.
Sé que hay muchas preguntas relacionadas con esto (ninguna responde específicamente a esto), pero básicamente lo que quiero es tener una especie de bandejas de entrada idénticas para los mismos usuarios tanto en Gmail como en el palomar local. Encontré una solución temporal al usar directamente GApps SMTP Relay en lugar de local para el correo web, pero eso no resuelve nada para aquellos que se conectan con IMAP (terminaría teniendo que darle a cada usuario acceso a GApps SMTP).
Respuesta1
Finalmente conseguí que mi configuración funcionara con varias instancias de Postfix.masegaloehmencionado. Intenté usar exim4, pero apt-get install exim4 desinstaló postfix automáticamente, ¡sin siquiera avisar! De todos modos, así es como lo hice funcionar:
#Adds some lines to main.cf enabling multiple instance
postmulti -e init
#Creates a new instance at the directory /etc/postfix-outgoing
postmulti -I postfix-outgoing -G mta -e create
Para mi caso de uso, queríapuerto25ypuerto465para usarse para recibir correo entrante de Gmail, pero necesitaba postfixenvío(se ejecuta en el puerto 587) para uso saliente del MTA. Así que lo comenté así en/etc/postfix/master.cf
#submission inet n - - - - smtpd
y comentóSMTPysmtpspero agregadoenvíoen /etc/postfix-outgoing/master.cf
, para obtener algo como esto
submission inet n - - - - smtpd
-o syslog_name=postfix/submission
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_reject_unlisted_recipient=no
Copié el archivo main.cf predeterminado de ISPConfig /etc/postfix
e hice muchas modificaciones en mi archivo /etc/postfix-outgoing/main.cf
, pero las principales son:
- Se modificó
myhostname
para diferir de la instancia principal. (de lo contrario, postfix confunde entre ellos) - Se eliminaron todas las configuraciones específicas de Dovecot.
- Cambiar directorio de datos.
- Asegúrese de que Postfix no intente la entrega local. (a través de mydestination, virtual_domains, etc.).
- Entra tu
relayhost
. - Agregar un segundo oyente a dovecot.conf
service auth
que apunte/var/spool/postfix-outgoing/private/auth
como referencia directa a la ruta original no funcionó para mí. O puedes intentar usar - Autenticación Dovecot a través de TCP.
Finalmente habilite la instancia:
postmulti -i postfix-outgoing -x postconf -e \
"master_service_disable ="
postmulti -i postfix-outgoing -e enable
postmulti -i postfix-outgoing -p start
tail -f /var/log/mail.log
y ver dónde salieron mal las cosas.
Referencia:http://www.postfix.org/MULTI_INSTANCE_README.html