Postfix:验证远程服务器上的收件人

Postfix:验证远程服务器上的收件人

我正在使用transport表格来指定特定域的下一跳:

主持人A:

/etc/postfix/transport
domain.com     smtp:[mail.host2.com]:25

Host A使用查找表验证本地收件人:

local_recipient_maps = proxy:unix:passwd.byname $alias_maps
unknown_local_recipient_reject_code = 550
  • 但我想知道是否有办法在 SMTP 时验证远程收件人,Host BHost A避免 NDR 伪造电子邮件。

更新时间:2014 年 7 月 28 日星期一 13:49:01 BST:

看起来像Exim 可以通过 LMTP 进行收件人电子邮件验证所以我想知道 Postfix 是否可以做同样的事情?

# Perform recipient verification
deny message = Recipient verification failed, Non-existent mailbox
log_message = Recipient verification failed
!verify      = recipient/callout=2m,use_postmaster,defer_ok

答案1

不存在这种普遍有效的方法。这种技术不仅对垃圾邮件发送者非常有用,而且您无法知道邮件通过公司对外宣传的邮件网关后会发生什么。

也许它会留在该盒子的线轴上,同时检查垃圾邮件和病毒,然后将其传送到内部服务器,供收件人最终传送和阅读;这是一种很常见的设置。中继盒根本不知道哪些用户是真正有效的 - 它只是清理内容并将其传递下去 - 所以即使有办法询问它,它也无法告诉你。

编辑鉴于更新:这不会帮助你。你链接到的文章展示了一个中继箱,它接受组织内部的入站最终交付邮件,并通过 LMTP 调用使其知道最终交付点上用户的存在/不存在。

在我上面的例子中,LMTP 交付可用于(假设的)远程中继系统,使其能够知道哪些收件人最终会在最终入站交付时成为有效用户。但你无法强迫他们在中继盒上启用该功能,除非您这样做,否则当您尝试验证收件人时,他们的中继盒不知道该告诉您什么。

基本上,有很多方法可以验证收件人在组织的信任边界内但是(幸运的是)没有在整个互联网上普遍有效的方法。

相关内容