problema al usar Postfix como retransmisión de cliente SMTP de autenticación para Exchange 2010

problema al usar Postfix como retransmisión de cliente SMTP de autenticación para Exchange 2010

Estoy usando postfix para retransmitir correo a Exchange 2010. Aquí está mi configuración:

relayhost = [smtp.exchange.2010]
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/relay_passwd
smtp_sasl_security_options =
#smtp_sasl_mechanism_filter = ntlm

(/etc/postfix/relay_passwd contiene información de inicio de sesión de algunas cuentas en Exchange) Con esta configuración puedo transmitir correo electrónico a Exchange. El problema es: el mensaje enviado desde Postfix tiene encabezado:

X-MS-Exchange-Organization-AuthAs: Anonymous

y el mensaje se trata como un mensaje no autenticado en el sistema Exchange (es decir, cuando se envía a un grupo de distribución, se requiere que los remitentes estén autenticados, recibí el error: #550 5.7.1 RESOLVER.RST.AuthRequired; se requiere autenticación ##rfc822;[correo electrónico protegido]). Utilizo Outlook con la misma cuenta que en Postfix y puedo enviar sin problemas. La diferencia que me di cuenta entre dos casos es: Outlook envía con el mecanismo de autenticación NTLM, Postfix usando el mecanismo LOGIN. ¿Alguna idea?

Respuesta1

Según la respuesta de AlexRobinson, el problema radica en Postfix. Esto se solucionó (por defecto) en Postfix 2.9 y versiones posteriores: http://www.postfix.org/postconf.5.html#smtp_send_dummy_mail_auth

[Incompat 20111106] To work around broken remote SMTP servers, the
Postfix SMTP client by default no longer appends the "AUTH=<>"
option to the MAIL FROM command.  Specify "smtp_send_dummy_mail_auth
= yes" to restore the old behavior.

Respuesta2

Tengo el mismo problema. Y causa problemas si el correo electrónico se envía a un grupo en lugar de a un individuo. El servidor Exchange no enviará a grupos si el mensaje no está AUTH. Pero si postfix se configuró para autenticarse al iniciar sesión, ¿por qué el correo electrónico no está AUTH? Pista: Si usas telnet para enviar el correo el correo electrónicovoluntadser AUTH. el encabezado que tendrá el correo electrónico será X-MS-Exchange-Organization-AuthAs: Internal(en mi caso). ¡Y el correo electrónico irá a los grupos!

Esto es lo que encontré (al configurar el nivel de registro de pares de postfix en 4): postfix envía el comando SMTP Mail From: ...... AUTH=<>. Déjalo AUTH=<>afuera y todo estará bien. Póngalo y Exchange dice: .... Anonymous.

Ahora estoy buscando descubrir por qué miente Postfix.

Ah. Lo encontré. Línea 1358 de smtp_proto.cen postfix v2.8. Codificado de forma rígida. Bien ahora. Eso es muy desafortunado. El código es bastante correcto desde el punto de vista de la seguridad, pero no es correcto si tiene control de quién accede a este código de envío SMTP en su cliente SMTP postfix.

/* postfix: smtp_proto.c 
#ifdef USE_SASL_AUTH                                                     
    if (var_smtp_sasl_enable                                      
    && (session->features & SMTP_FEATURE_AUTH))                     
    vstring_strcat(next_command, " AUTH=<>");                        
#endif

En este punto, no sé qué hacer aparte de parchear smtp_proto.cy crear postfix desde cero. Qué asco.

información relacionada