issue usando Postfix como retransmissão de cliente SMTP authen para o Exchange 2010

2

Estou usando o postfix para retransmitir mensagens para o Exchange 2010. Aqui está minha configuração:

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 contém informações de login de algumas contas no Exchange) Com essa configuração, posso retransmitir email para o Exchange. O problema é: a mensagem enviada pelo Postfix tem cabeçalho:

X-MS-Exchange-Organization-AuthAs: Anonymous

e a mensagem é tratada como uma mensagem não autenticada no sistema do Exchange (ou seja, ao enviar para o grupo de distribuição exigir que os remetentes sejam autenticados, recebi um erro: # 550 5.7.1 RESOLVER.RST.AuthRequired; autenticação necessária ## rfc822; group @ exchange .2010). Eu usando o Outlook com a mesma conta como no Postfix e pode enviar sem problemas. O diferente que percebi entre dois casos é: Outlook send com NTLM auth mech, Postfix usando LOGIN mech. Alguma idéia?

    
por Gk. 23.12.2010 / 05:15

2 respostas

1

Por resposta de AlexRobinson, o problema está no Postfix. Isso corrigido (por padrão) no Postfix 2.9 e posterior: link

[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.
    
por 01.04.2013 / 12:16
4

Eu tenho o mesmo problema. E isso causa problemas se o email for enviado para um grupo e não para um indivíduo. O servidor do Exchange não enviará para grupos se a mensagem não for AUTH'd. Mas se o postfix foi configurado para autenticar fazendo o login, por que o e-mail não é AUTH'd? Dica: Se você usar o telnet para enviar o e-mail, o e-mail será será AUTH'd. o cabeçalho que o email terá será X-MS-Exchange-Organization-AuthAs: Internal (no meu caso). E o email irá para grupos!

Aqui está o que eu encontrei (definindo o nível de registro do peer postfix como 4): o postfix envia o comando% Mail From: ...... AUTH=<> . Deixe o AUTH=<> fora e tudo está bem. Coloque-o e o Exchange diz: .... Anonymous .

Estou procurando agora o porquê do postfix.

Ah. Encontrei. Linha 1358 de smtp_proto.c no postfix v2.8. Codificado. Bem agora. Isso é muito lamentável. O código é bem correto do ponto de vista da segurança, mas não é correto se você tiver o controle de quem acessa esse código SMTP de envio no seu 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

Neste ponto, não sei o que fazer além do patch smtp_proto.c e construo o postfix do zero. Yuck.

    
por 05.04.2011 / 09:38