postfix转发邮件被退回原始发件人

时间:2015-01-26 10:46:58

标签: postfix-mta forward bounce

我使用postfix作为" myDomain.com"的邮件服务器。此外,我已经为gmail安装了转发服务。到目前为止工作正常。但当有人给我发电子邮件时,例如一个可执行文件,gmail弹出邮件。来自Gmail的这封通知邮件将转发给原始发件人,但不会转发给我。 我想要完成的事情:

  • " A"将可执行文件发送到我的地址" myDomain.com"。
  • 电子邮件将转发给Gmail。 - > gmail通过通知将邮件退回。
  • 我希望在我的邮箱中收到这封退回的电子邮件,地址为#34; myDomain.com"。
  • 原始发件人" A"没有从gmail那里得到任何东西。

有关如何实现这一目标的任何想法? 谢谢!

2 个答案:

答案 0 :(得分:2)

  
      
  • 电子邮件将转发给Gmail。 - > gmail通过通知将邮件退回。

  •   
  • 我想在“myDomain.com”的邮箱中收到这封退回的电子邮件。

  •   
  • 原始发件人“A”没有从gmail获得任何内容。

  •   

Gmail未向原始发件人发送退回邮件。

通讯流程如下:

步骤1:原始发件人邮件服务器与您的服务器通信(我们称之为mx.example.com)

HELO originalsendermx
250 mx.example.com
MAIL FROM: originalsender@spammy.example
250 2.1.0 Ok
RCPT TO: a@example.com
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: this is a virus in an executable for a@example.com
<base64encodedvirusexe>
.
250 2.0.0 Ok: queued as C9F786427FA
QUIT
221 2.0.0 Bye

步骤2:您的后缀服务器有一条规则将所有邮件转发到a@example.com到b@example.org,因此它连接到mx.example.org:

HELO mx.example.com
250 mx.example.org
MAIL FROM originalsender@spammy.example
250 2.1.0 Ok
RCPT TO: b@example.org
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: this is a virus in an executable for a@example.com
<base64encodedvirusexe>
.
550 5.2.3 The content of this message is not allowed
QUIT
221 2.0.0 Bye

因此,您的服务器接受了原始发件人的邮件,但是example.org(或您的情况下为gmail)不接受来自您服务器的邮件。根据{{​​3}},您的服务器应生成未送达通知并将其发送给原始发件人:

  

如果SMTP服务器已接受中继邮件的任务,则稍后   发现目的地不正确或邮件不能   由于其他原因,它必须构建一个   “无法投递的邮件”通知消息并将其发送给   无法送达邮件的发起人。

这是postfix的默认行为。 OTOH,常识RFC 2821你不应该在这种情况下发出反弹,dictates同意。

实现此目标的最快方法是将master.cf修改为永不发送跳出:

bounce    unix  -       -       n       -       0       discard

但它有点极端,可能在很多环境中都可以撤销。您可以使用header_checks将其缩小一点。

重要的一点是,gmail没有弹跳任何东西,它只是拒绝它。你的服务器是弹跳的。

答案 1 :(得分:1)

我或多或少有同样的问题;我注意到Gmail在这种情况下使用SMTP响应代码421。由于它不是5xx代码,这意味着邮件排队等待稍后重试并位于deferred队列中。所以我建立了一个cronjob来每小时清除队列中的这些邮件,运行以下命令:

mailq | egrep -i -B 1 'google.com.*421-4.7.0.*gsmtp' | egrep -v '^\(|--' | cut -d' ' -f1 | postsuper -v -d -

确切的错误消息格式可能会有所不同,但421-4.7.0似乎是常见的分母。