
O problema parece ser o MS Outlook 2007 não enviando SMTP AUTH por algum motivo estranho para apenas um domínio específico.
Eu executo o servidor iRedMail (está usando stock debian 7/wheezy, postfix 2.9.6-2) para meu domínio e algumas dezenas de domínios de clientes. O problema é que tenho um cliente que não consegue enviar e-mail para mim mesmo (não apenas meu e-mail, mas todo o domínio) - ele é rejeitado devido, reject_non_fqdn_helo_hostname
mas o cliente está usando SMTP AUTH e está configurado corretamente, portanto, deve ignorar a verificação de FQDN. Parece que o MUA não está usando SMTP AUTH apenas para meus endereços de e-mail e meus coleaques.
Alguém viu isso antes? Como posso solucionar esse problema? Qualquer contribuição é muito apreciada!
Será que está conectado ao MUA? Ela está usando o Outlook (não o Express)?
Dê uma olhada nos seguintes trechos de registros mostrando diferentes situações. Tudo foi capturado na mesma configuração/mesmos MUA/IP's, ...:
1) está tudo bem: meu cliente envia e-mail para um servidor de terceiros; usando SMTP AUTH
28 de maio 13:02:13 email2 postfix/smtpd[1191]: conectar de <censurado> 28 de maio 13:02:13 email2 postfix/smtpd[1191]: 28A5D35E61DC: client=<censored>, sasl_method=LOGIN, sasl_username=<[e-mail protegido]> 28 de maio 13:02:26 email2 postfix/limpeza[1435]: 28A5D35E61DC: message-id=<006c01ce5b92$d33805e0$79a811a0$@cz> 28 de maio 13:02:44 email2 postfix/qmgr[376]: 28A5D35E61DC: de=<[e-mail protegido]>, tamanho=4392922, nrcpt=7 (fila ativa) 28 de maio 13:02:44 email2 postfix/smtp[1580]: 28A5D35E61DC: to=<[e-mail protegido]>, relé=127.0.0.1[127.0.0.1]:10024, atraso=32, atrasos=31/0/0/0.88, dsn=2.0.0, status=enviado (250 2.0.0 do MTA(smtp:[127.0 .0.1]:10025): 250 2.0.0 Ok: na fila como B061435E61DE) 28 de maio 13:02:47 email2 postfix/qmgr[376]: 28A5D35E61DC: removido
2) está tudo bem: meu cliente envia email para conta local (coleque dela); ela está usando SMTP AUTH
28 de maio 13:06:18 email2 postfix/smtpd[2519]: conectar de <censurado> 28 de maio 13:06:18 email2 postfix/smtpd[2519]: 49CE735E61D4: client=<censored>, sasl_method=LOGIN, sasl_username=<[e-mail protegido]> 28 de maio 13:06:18 email2 postfix/limpeza[429]: 49CE735E61D4: message-id=<007201ce5b93$5df069c0$19d13d40$@cz> 28 de maio 13:06:19 email2 postfix/qmgr[376]: 49CE735E61D4: de=<[e-mail protegido]>, tamanho=10875, nrcpt=1 (fila ativa) 28 de maio 13:06:19 email2 postfix/smtp[2295]: 49CE735E61D4: to=<[e-mail protegido]>, relé=127.0.0.1[127.0.0.1]:10024, atraso=1,6, atrasos=1,2/0/0/0,43, dsn=2.0.0, status=enviado (250 2.0.0 do MTA(smtp:[127.0 .0.1]:10025): 250 2.0.0 Ok: na fila como CC61F35E61D7) 28 de maio 13:06:19 email2 postfix/qmgr[376]: 49CE735E61D4: removido
3) problema, email enviado para minha conta (mesmo servidor, mas domínio diferente), NÃO usando SMTP AUTH???:
28 de maio 13:04:38 email2 postfix/smtpd[1433]: conectar de <censurado> 28 de maio 13:04:38 email2 postfix/smtpd[1433]: NOQUEUE: rejeitar: RCPT de <censurado>: 554 5.7.1 <meu_email>>: Endereço do destinatário rejeitado: HELO/EHLO inválido; Deve ser um FQDN ou um endereço literal, não 'xxx'; de=<[e-mail protegido]> to=<meu_endereço> proto=ESMTP helo= 28 de maio 13:04:41 email2 postfix/smtpd[1433]: desconectar de <censurado>
Parte da configuração do postfix:
smtpd_sender_restrictions = permit_mynetworks, rejeitar_autenticado_sender_login_mismatch, permit_sasl_authenticated smtpd_recipient_restrictions = rejeitar_unknown_sender_domain, rejeitar_destinatário_desconhecido_domínio, rejeitar_non_fqdn_sender, rejeitar_non_fqdn_recipient, rejeitar_destinatário_não listado, check_policy_service inet:127.0.0.1:7777, check_policy_service inet:127.0.0.1:10031, permitir_minhasredes, permit_sasl_authenticated, rejeitar_unauth_destination smtpd_helo_restrictions = permit_mynetworks, permit_sasl_authenticated, rejeitar_non_fqdn_helo_hostname, rejeitar_invalid_helo_hostname, check_helo_access pcre:/etc/postfix/helo_access.pcre
Veja a saída depós-confidenciaegato principal.cfg
Responder1
HELO/EHLO aconteceantesa autenticação SMTP. Se o seu servidor estiver configurado com reject_non_fqdn_helo_hostname = yes
, ele rejeitará qualquer conexão com um nome de host inválidoanteschegando à parte SMTP AUTH.
Embora manter essa rejeição reduza parte do spam, também bloqueará vários e-mails legítimos. Você deve dar uma olhada mais de perto na documentação do Postfix pararejeitar_invalid_helo_hostnameesmtp_helo_restrictionspara descobrir como você deseja que isso funcione.
Responder2
Você smtpd_recipient_restrictions
está bem presumindo que todos os seus clientes estão se comportando bem. Como eles não estão (não estão enviando HELO correto), você deve pelo menos ter algo como
smtpd_recipient_restrictions = reject_unknown_sender_domain,
reject_unknown_recipient_domain,
permit_sasl_authenticated,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unlisted_recipient,
check_policy_service inet:127.0.0.1:7777,
check_policy_service inet:127.0.0.1:10031,
permit_mynetworks,
reject_unauth_destination
Melhor ainda:
smtpd_recipient_restrictions =
check_recipient_access hash:/etc/postfix/access-recipient-rfc,
check_client_access cidr:/etc/postfix/access-client,
check_helo_access hash:/etc/postfix/access-helo,
check_sender_access hash:/etc/postfix/access-sender,
check_recipient_access hash:/etc/postfix/access-recipient,
permit_mynetworks,
permit_sasl_authenticated,
reject_unknown_sender_domain,
reject_non_fqdn_sender,
reject_unknown_recipient_domain,
reject_non_fqdn_recipient,
reject_rbl_client zen.spamhaus.org,
reject_rbl_client ix.dnsbl.manitu.net,
# greylisting
check_policy_service inet:127.0.0.1:10023,
# policyd-weight
check_policy_service inet:127.0.0.1:12525,
reject_unauth_destination,
reject_unverified_recipient,
permit
Além disso, você deve integrar todas as restrições no arquivo smtpd_recipient_restrictions
. DesdeHELO vem antes da autenticação SASL, não adianta permitir a autenticação SASL no smtpd_helo_restrictions
.
Em geral, é uma boa prática usar apenas smtpd_recipient_restrictions
, já que você pode fazer tudo lá, evita repetir coisas e a sobrecarga de rede de conexões que teriam sido encerradas após o helo não é substancial.
Responder3
O problema estava no policyd (cluebringer)... não foi visto no log à primeira vista, que a rejeição não era da restrição do postfix, mas sim do policyd.
Fundo
Eu tinha no grupo Cluebringers internal_domains apenas meu domínio primário (após a instalação) e todos os novos domínios não estavam lá... Para resolver o problema resolvi esvaziar os internal_domains e tudo funciona como esperado agora.
Obrigado por toda sua ajuda!