Postfix:如何拒绝本地域中不存在的发件人地址

Postfix:如何拒绝本地域中不存在的发件人地址

在我的 Postfix 上,我尝试拒绝使用本地管理域的虚假地址的发件人。但我只想对本地域进行检查,而不是对所有发件人进行检查。

因此,如果example.com是在本地管理,我想阻止[email protected]并让其[email protected]通过[email protected]

我研究了smtpd_sender_restrictions一下reject_unverified_sender,但我不知道如何仅对本地域进行检查。

答案1

您正在寻找的参数是smtpd_reject_unlisted_sender

smtpd_reject_unlisted_sender(默认值:否)

要求 Postfix SMTP 服务器拒绝来自未知发件人地址的邮件,即使未reject_unlisted_sender指定明确的访问限制。这可以减缓蠕虫或病毒伪造邮件的激增。

当地址与虚拟(5)别名或规范(5)映射。

  • 发件人域名匹配$我的目的地$inet_interfaces或者$proxy_interfaces,但发件人未列在$local_recipient_maps, 和$local_recipient_maps不为空。
  • 发件人域名匹配$虚拟别名域名但发件人未在$virtual_alias_maps 中列出。
  • 发件人域名匹配$虚拟邮箱域名但发件人未列在$虚拟邮箱映射, 和$虚拟邮箱映射不为空。
  • 发件人域名匹配$relay_domains但发件人未列在$relay_recipient_maps, 和$relay_recipient_maps不为空。

Postfix 2.1 及更高版本中提供此功能。

smtpd_reject_unlisted_sender = yes您可以通过在中指定来启用它main.cf。另一种方法是放入堆栈reject_unlisted_sender中。smtpd_*_restriction


补充说明:Reject_unverified_sender 和 Reject_unlisted_sender 之间有什么区别?

两种方法的区别在于其如何进行验证。

  • 带参数的 Postfixreject_unverified_sender将通过 telnet 到远程 MX 服务器验证发件人,并使用收件人 = unverified_sender 执行未完成的 SMTP 事务。如果远程服务器不拒绝收件人,则 Postfix 假定发件人已经过验证。请参阅地址验证的工作原理在 Postfix 文档中。
  • 带参数的 Postfixreject_unlisted_sender将通过查看有效收件人来验证发件人所有域名类别(本地、虚拟别名、虚拟邮箱和中继。

相关内容