Configuration Postfix/Spamassassin:未送达的邮件返回给发件人

Configuration Postfix/Spamassassin:未送达的邮件返回给发件人,configuration,email,postfix-mta,spamassassin,Configuration,Email,Postfix Mta,Spamassassin,我对新配置的邮件服务器有一个问题,邮件服务器实际上接受了来自本地域的垃圾邮件,邮件没有按原样发送,spamassassin将其标记为垃圾邮件,然后向被欺骗的本地用户发送一封电子邮件“未送达的邮件返回发件人” 我知道有办法在配置中解决这个问题,但我不知道在哪里,我希望有人能给我指出正确的方向 要明确的是,邮件服务器没有中继,这只是本地用户的问题。 我希望postfix拒绝任何可能来自本地用户但不是内部发送的电子邮件。这将解决这个问题 这是一封电子邮件,告诉你发生了什么。我已将域更改为example

我对新配置的邮件服务器有一个问题,邮件服务器实际上接受了来自本地域的垃圾邮件,邮件没有按原样发送,spamassassin将其标记为垃圾邮件,然后向被欺骗的本地用户发送一封电子邮件“未送达的邮件返回发件人”

我知道有办法在配置中解决这个问题,但我不知道在哪里,我希望有人能给我指出正确的方向

要明确的是,邮件服务器没有中继,这只是本地用户的问题。 我希望postfix拒绝任何可能来自本地用户但不是内部发送的电子邮件。这将解决这个问题

这是一封电子邮件,告诉你发生了什么。我已将域更改为example.com.au

###############################################

这是位于host example.com.au的邮件系统

很抱歉,我不得不通知您,您的邮件无法
发送给一个或多个收件人。它附在下面。

如需进一步帮助,请向邮政局长发送邮件。

如果您这样做,请包括此问题报告。你可以
从附加的返回消息中删除您自己的文本。

邮件系统

:主机127.0.0.1[127.0.0.1]表示:554 5.7.0拒绝,id=11887-07-垃圾邮件(回复数据结束命令)

报告MTA:dns;example.com.au
X-Postfix-Queue-ID:661DC5D1DE
X-Postfix-Sender:rfc822;dan@example.com.au
抵达日期:2009年5月5日星期二06:21:38+1000(美国东部时间)

最终收件人:rfc822;dan@example.com.au
原收件人:rfc822;dan@example.com.au
操作:失败状态:5.7.0
远程MTA:dns;127.0.0.1
诊断代码:smtp;554 5.7.0拒绝,id=11887-07-垃圾邮件?

发件人:Berenice Penez
日期:周一,4日
2009年5月22:21:41+0200
收件人:主题:论坛上是你吗?

质量可靠,无延迟
传送
疾病治疗


###############################################
Postfix main.cf(重要部分,不完整)

自述目录=/usr/share/doc/postfix
mydomain\u fallback=localhost
消息大小限制=0
邮箱大小限制=0
myhostname=example.com.au
邮箱_传输=cyrus
mydomain=example.com.au
inet_接口=所有
启用服务器选项=是
mydestination=$myhostname,localhost.$mydomain,localhost,example.com.au
smtpd_sasl_auth_enable=是
smtpd_使用_pw_服务器=是
smtpd\u收件人\u限制=允许\u sasl\u已验证,允许\u mynetworks,拒绝\u未经授权\u目的地,拒绝\u未知\u收件人\u域,拒绝\u未知\u发件人\u域,拒绝\u无效\u主机名
smtpd\u pw\u服务器\u安全\u选项=普通,登录
content\u filter=smtp amavis:[127.0.0.1]:10024
mynetworks=127.0.0.0/8,10.0.1.0/24
smtpd_客户端限制=允许通过身份验证,拒绝客户端dnsbl.sorbs.net


有几点不同:

  • 这应该出现在serverfault.com上,但由于我不是测试版,所以我将在这里回答

  • postconf-n的输出比在main.cf中包含您认为相关的行要好。如果有参数替代或其他自定义,还包括master.cf中的相关行

  • 不要接受,然后像那样回复邮件。如果在Postfix中使用SpamAssassin作为后队列过滤器(通常的运行方式),则需要标记并传递(并使用客户端规则进行过滤),或者隔离邮件而不通知发件人。从你的问题来看,你可能是一个后向散射源。住手。例如,见。请考虑将AsaviSd用于将Spasasasin集成到后缀中,并使用各种有用的特征。

  • 考虑将所有限制折叠为smtpd_收件人_限制。通常,管理这样的线性限制流比处理smtpd{client、helo、sender、receiver}u限制之间的交互更容易

  • 要防止Postfix接受来自外部的邮件,请添加拒绝声称来自您的域的邮件的发件人访问映射:

smtpd_收件人_限制= 经认证的许可证, 允许我的网络, 拒绝取消目的地, 检查\u发件人\u访问哈希:$config\u目录/reject\u mydomains 拒绝\u未知\u收件人\u域, 拒绝\u未知\u发件人\u域, 拒绝\u无效的\u主机名 在我的领域里

example.com.au REJECT you are not me 你不是我 如果发件人有正当理由将您的域用作信封发件人(电子卡、邀请函,可能是一些外包服务,如调查或诸如此类),那么来自发件人的邮件可能会出现误报。您可以在返回OK或适当限制类的发件人访问映射之前,使用客户端访问映射在您的非我规则周围列出白名单(请参阅)

您可以使用类似的HELO检查来清除使用您自己的主机名/IP或已知错误HELO字符串的客户端HELO

smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination, check_helo_access hash:$config_directory/helo_checks check_sender_access hash:$config_directory/reject_mydomains reject_unknown_recipient_domain, reject_unknown_sender_domain, reject_invalid_hostname smtpd_收件人_限制= 经认证的许可证, 允许我的网络, 拒绝取消目的地, 检查\u helo\u访问哈希:$config\u目录/helo\u检查 检查\u发件人\u访问哈希:$config\u目录/reject\u mydomains 拒绝\u未知\u收件人\u域, 拒绝\u未知\u发件人\u域, 拒绝\u无效的\u主机名 在helo_检查中:

example.com.au REJECT BAD-HELO you are not example.com.au mailserver.example.com.au REJECT BAD-HELO you are not me localhost REJECT BAD-HELO you are not me localhost.localdomain REJECT BAD-HELO you are not me # where 1.2.3.4 is the IP of your server 1.2.3.4 REJECT BAD-HELO you are not me 127.0.0.1 REJECT BAD-HELO you are not me 拒绝BAD-HELO你不是example.com.au mailserver.example.com.au拒绝坏HELO你不是我 本地主机拒绝坏HELO你不是我 localhost.localdomain拒绝坏HELO你不是我 #其中1.2.3.4是服务器的IP 1.2.3.4拒绝BAD-HELO您不是m example.com.au REJECT BAD-HELO you are not example.com.au mailserver.example.com.au REJECT BAD-HELO you are not me localhost REJECT BAD-HELO you are not me localhost.localdomain REJECT BAD-HELO you are not me # where 1.2.3.4 is the IP of your server 1.2.3.4 REJECT BAD-HELO you are not me 127.0.0.1 REJECT BAD-HELO you are not me reject_rbl_client zen.spamhaus.org