允许用户使用postfix发送邮件

我已经在我的ubuntu服务器上安装了postfix和opendkim,打算把这个服务器作为一个私有中继,让应用程序向新用户发送“激活”邮件。 我用dovecot-commonsconfigurationSASLauthentication来保护它。

我使用以下方法进行了testing: echo "Email Body" | mail -s "Subject" [email protected] echo "Email Body" | mail -s "Subject" [email protected]并使用mail-tester.comvalidation我的configuration,并且SPF / DMARClogging正常工作。 我也使用telnet进行testing,连接到SMTP套接字并在MAIL FROM字段中填写我自己的用户名。 这也是成功的。

然后,我在服务器上build立一个新的用户帐户,并作为新用户进行testing发送。 当时没有任何工作。 邮件命令和telnet方法都会报告成功,而不会出错,但是邮件永远不会到达收件人。 我使用一组相同的主题和邮件正文进行testing,发送到相同的外部电子邮件地址。 日志没有显示任何错误,看起来同样成功。

用户帐户是否有任何先决条件能够使用postfix + dovecot?

使用旧用户帐户进行尝试的日志条目

 Nov 24 21:09:42 host postfix/pickup[21809]: D816C20CC7: uid=1000 from=<old_user_account@domain> Nov 24 21:09:42 host postfix/cleanup[21918]: D816C20CC7: message-id=<[email protected]> Nov 24 21:09:42 host opendkim[21821]: D816C20CC7: DKIM-Signature field added (s=mail, d=domain) Nov 24 21:09:42 host postfix/qmgr[21810]: D816C20CC7: from=<old_user_account@domain>, size=368, nrcpt=1 (queue active) Nov 24 21:09:45 host postfix/smtp[21929]: D816C20CC7: to=<[email protected]>, relay=mx2.hotmail.com[65.54.188.72]:25, delay=2.6, delays=0.05/0.01/1.6/0.92, dsn=2.0.0, status=sent (250 <[email protected]> Queued mail for delivery) Nov 24 21:09:45 host postfix/qmgr[21810]: D816C20CC7: removed 

使用新用户帐户进行尝试的日志条目

 Nov 24 21:10:36 host postfix/pickup[21809]: 72A4C20CC7: uid=1002 from=<new_user_account@domain> Nov 24 21:10:36 host postfix/cleanup[21918]: 72A4C20CC7: message-id=<[email protected]> Nov 24 21:10:36 host opendkim[21821]: 72A4C20CC7: DKIM-Signature field added (s=mail, d=domain) Nov 24 21:10:36 host postfix/qmgr[21810]: 72A4C20CC7: from=<new_user_account@domain>, size=371, nrcpt=1 (queue active) Nov 24 21:10:39 host postfix/smtp[21929]: 72A4C20CC7: to=<[email protected]>, relay=mx2.hotmail.com[65.55.33.135]:25, delay=3.3, delays=0.06/0/1.7/1.5, dsn=2.0.0, status=sent (250 <[email protected]> Queued mail for delivery) Nov 24 21:10:39 host postfix/qmgr[21810]: 72A4C20CC7: removed 

你会得到一个排队的邮件,但是你没有给我们足够的信息来知道它是否在你的postfix上排队,或者它是否在目的地排队。

你说一个不同的Hotmail服务器被使用,我假设你正在发送到Hotmail的地址? 如果hotmail说两个不同的邮件“排队交付”,而一个没有到达,那么问题是内容。 一个被检测为垃圾邮件。

也许接收用户可以在他的垃圾邮件文件夹中find它。 否则,将发件人添加到“安全发件人”列表中,然后再试一次,如果有效,那么您将确认这是反垃圾邮件规则。

也许你的DMARC适用于你的服务器发送的邮件,但不适用于你的服务器转发的邮件? 尝试find“丢失”的电子邮件或发送一个新的垃圾邮件过滤较less的地址,并比较头。 也许你知道一个有SpamAssassin过滤的人; SpamAssassin通常会将分析结果写入标题中,您可以使用这些标题找出垃圾邮件中的原因。

编辑:感谢您添加您的日志。 他们显示这两个邮件正确交付给Hotmail。 Hotmail IP不同的事实并不重要。 如果一个人重复地通过而不是另一个,过滤必须根据源邮件地址做一些不同的事情。 由于这是Hotmail,请尝试将新发件人添加到安全发件人列表中 。 在其他情况下,问题可能是手动过滤(有些提供商会让你编写自己的规则,有时候人们会忘记)。