我在 Ubuntu 上运行 Postfix 2.9.6,配置如下,https://gist.github.com/anonymous/400fb4afa05e18c6da2b
当有效客户端尝试向自己发送电子邮件时,我遇到了以下问题。我的大多数客户端没有有效的 FQDN 作为主机名,但据我所知这不是问题,但permit_sasl_authenticated
我不知道为什么以下过程会变成这样:
出站:220 mail.isp.es ESMTP Postfix 在:EHLO NoFQDN-Host 出站:250-mail.isp.es 出局:250-PIPELINING 出站:250-SIZE 10240000 出局:250-ETRN 输出:250-STARTTLS 输出:250-AUTH PLAIN LOGIN CRAM-MD5 DIGEST-MD5 输出:250-ENHANCEDSTATUSCODES 出局:250-8BITMIME 出局:250 DSN 发件人:<[电子邮件保护]> 出局:250 2.1.0 好 收件箱:RCPT TO:<[电子邮件保护]> 输出:450 4.7.1:Helo 命令被拒绝:未找到主机 会话中止,原因:连接丢失 有关其他详细信息,请参阅本地邮件日志文件
以下是我的限制:
smtpd_client_restrictions = rejection_rbl_client sbl.spamhaus.org,reject_rbl_client blackholes.easynet.nl,reject_rbl_client dnsbl.njabl.org smtpd_data_restrictions = rejection_unauth_pipelining smtpd_end_of_data_restrictions= smtpd_etrn_restrictions= smtpd_helo_restrictions = permit_mynetworks,permit_sasl_authenticated,warn_if_reject rejection_non_fqdn_hostname,reject_invalid_hostname,允许 smtpd_recipient_restrictions = permit_sasl_authenticated、reject_unauth_pipelining、permit_mynetworks、reject_non_fqdn_recipient、reject_unknown_recipient_domain、reject_unauth_destination、warn_if_reject rejection_unknown_helo_hostname、允许 smtpd_restriction_classes = smtpd_sender_restrictions = permit_sasl_authenticated、permit_mynetworks、warn_if_reject、reject_non_fqdn_sender、reject_unknown_sender_domain、reject_unauth_pipelining、允许
有人知道为什么该客户端无法发送电子邮件而其他客户端可以吗?
答案1
重要配置部分
https://gist.github.com/anonymous/7168b1810d6f7bbea7e7
smtpd_recipient_restrictions = rejection_unauth_pipelining,permit_mynetworks,reject_non_fqdn_recipient,reject_unknown_recipient_domain,reject_unauth_destination,reject_unknown_helo_hostname,permit_sasl_authenticated,允许
建议修复
输入smtpd_recipient_restrictions
reject_unknown_helo_hostname
后 permit_sasl_authenticated
。
答案2
您的客户可能只需要更改其电子邮件客户端的配置。您没有提到是否已启用提交和/或 smtps 端口,但是,如果您仅提供端口 25,他们可能只需要配置其传出连接以使用 STARTTLS。