postfix: forzar al servidor a enviar correo fuera de localhost [cerrado]

9

Tengo un archivo php que envía correo usando la función mail (). El problema es que uno de los formularios se envía a un dominio que está registrado en mi servidor mientras el correo se maneja en un servidor diferente. Postfix solo se ve localmente. Cuando no encuentra la dirección de correo electrónico se rechaza el mensaje. ¿Cómo puedo configurar postfix para enviar correo a todos los dominios a través de Internet y no localmente?

Actualizar

Okay. Entonces no fue un problema de postfix en absoluto. Simplemente necesitaba apagar el correo a ese dominio desde la línea de comando. Para cualquiera que necesite ese comando es (al menos en mi sistema):

/usr/local/psa/bin/domain --update example.com -mail_service false
LoneWolfPR
fuente

Respuestas:

4

Resolví el problema similar. A medida que escribe en su actualización, debe desactivar el servicio de correo para el dominio por /usr/local/psa/bin/domain --update example.com -mail_service falsecomando; debería funcionar en la mayoría de los casos. De todos modos cometí otro error y desconectar el servicio de correo no fue suficiente solución para mí.

Al principio debería verificar mi configuración de DNS. Tengo DNS alojado fuera del servidor Plesk, pero configuré que el DNS sea administrado por el servidor (opción predeterminada) durante la creación del dominio; este fue el único error. Entonces todo funcionaba bien, excepto el envío de correos al dominio administrado por Plesk. Luego, el correo se envió con éxito desde domain.tld a [email protected] pero no a [email protected]

La solución para mí fue desactivar el Servicio DNS para el dominio en el Panel de control de Plesk . Se puede hacer a través DNS Settingsdel Panel de control para el dominio.

Boris Šuška
fuente
1

Parece que tu $mydestinationestá equivocado. Verifique su valor actual en su sistema con el comando:

postconf mydestination

Por defecto, postfix entrega correo solo al host local, no al dominio completo:

% postconf -d mydestination
mydestination = $myhostname, localhost.$mydomain, localhost

Si necesita ajustar eso, edite /etc/postfix/main.cf.

Para obtener más información sobre escenarios comunes de Postfix, consulte los ejemplos de configuración estándar . También puede ver información específicamente sobremydestination .

fisión
fuente
Así es como se ve mi destino: mydestination = $ myhostname, localhost. $ Mydomain, localhost
LoneWolfPR
Lo extraño es que lo he cambiado, pero todavía no muestra lo que veo en el archivo main.cf
LoneWolfPR
Pruebe postfix reloada recargar su configuración ...
fisión
Resulta que la solución no estaba en postfix para empezar. Publiqué una actualización con la respuesta ya que aún no puedo responder mis propias preguntas. Gracias por tomarte el tiempo.
LoneWolfPR
Probablemente hubiera sido útil saber que no era un postfix "vainilla" y que estabas usando Plesk. ;-) Me alegra saber que está ordenado ahora.
fisión
1

también puede usar el archivo / etc / postfix / transport para definir selectivamente qué servidor smtp debe manejar qué dominios se envían. Por ejemplo, si desea enviar un correo electrónico de mydomain.com a smtp.mydomain.com, puede escribir en / etc / postfix / transport:

mydomain.com  smtp:[smtp.mydomain.com]

No olvide hacer postmap / etc / postfix / transport después, para crear el archivo .db que usa postfix.

Tuncay Göncüoğlu
fuente