Estoy tratando de configurar un servidor Postfix en una caja de Linux para retransmitir todo el correo a nuestro servidor de correo Office365 (Exchange, alojado por Microsoft), pero sigo recibiendo un error con respecto a la dirección de envío:
BB338140DC1: to = relay = pod51010.outlook.com [157.56.234.118]: 587, retraso = 7.6, retrasos = 0.01 / 0 / 2.5 / 5.1, dsn = 5.7.1, estado = rebotado (host pod51010.outlook.com [ 157.56.234.118] dijo: 550 5.7.1 El cliente no tiene permisos para enviar como este remitente (en respuesta al final del comando DATOS))
Office 365 requiere que la dirección de envío en el encabezado MAIL FROM y From: sea la misma que la dirección utilizada para autenticar. He intentado todo lo que puedo pensar en la configuración para que esto funcione. Mipostconf -n:
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
debug_peer_list = 127.0.0.1
inet_interfaces = loopback-only
inet_protocols = all
mailbox_size_limit = 0
mydestination = xxxxx, localhost.localdomain, localhost
myhostname = localhost
mynetworks = 127.0.0.0/8
recipient_delimiter = +
relay_domains = our.doamin
relayhost = [pod51010.outlook.com]:587
sender_canonical_classes = envelope_sender
sender_canonical_maps = hash:/etc/postfix/sender_canonical
smtp_always_send_ehlo = yes
smtp_sasl_auth_enable = yes
smtp_sasl_mechanism_filter = login
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options =
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_tls_loglevel = 1
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
/etc/postfix/sender_canonical
:
www-data [email protected]
root [email protected]
www-data@localhost [email protected]
root@localhost [email protected]
Además, sasl_passwd
está configurado con las credenciales correctas (las probó usando swaks varias veces). La autenticación funciona y envía el mensaje cuando los encabezados from son correctos (también probado usando swaks , que funciona)
Los correos electrónicos provienen de PHP, por lo que también he intentado alterar la ruta de sendmail php.ini
para usar la dirección correcta desde -f
Entonces, por alguna razón, el correo proveniente de www-data y root no está reescribiendo los campos from a satisfacción de Office 365, y no enviará el mensaje.
¿Hay algún gurú de postfix que pueda ayudarme a configurar este relé?
fuente
Jan 9 11:03:11 isvahlrtk01 postfix/smtp[12841]: connect to pod51017.outlook.com[157.56.250.182]:587: Connection timed out
Solución:
No envíe correo a Office365 como usuario desde su dominio de correo electrónico alojado en Office365. Use un subdominio, por ejemplo, direcció[email protected] en lugar de direcció[email protected]. No estaría de más configurar un registro SPF para services.mydomain.com o lo que decida usar.
No se autentique contra mail.messaging.microsoft.com como usuario de Office365. Simplemente conéctese en el puerto 25 y entregue el correo a su dominio como lo haría cualquier agente SMTP extranjero.
fuente
Descubrí que faltaban algunos módulos de autenticación SASL. Lo siguiente lo arregló:
( módulo simple probablemente fue suficiente)
fuente