在 Zimbra 服务器 (postfix) 上阻止子域时是否可以使用通配符

在 Zimbra 服务器 (postfix) 上阻止子域时是否可以使用通配符

我有一个在 Ubuntu 14.04.5 LTS 上运行的 zimbra 8.7.11 社区版服务器。

有时,非常大的域(例如 yahoo.com 或 hotmail.com)中的单个 SMTP 服务器会列在 DNS RBL 中。

我尝试使用这个文件在 Postfix 级别将他们的服务器列入白名单:

/opt/zimbra/conf/postfix_blacklist

以下是一个例子:

mail-dm3nam03on0060.outbound.protection.outlook.com OK
mail-dm3nam03on0077.outbound.protection.outlook.com OK
mail-oln040092008029.outbound.protection.outlook.com OK
*outbound.protection.outlook.com OK

随后我运行了 postmap /opt/zimbra/conf/postfix_blacklist。

底部的通配符条目似乎不会将 .protection.outlook.com 域内的每个主机名列入白名单,而且实际主机名太多,无法尝试列入白名单。我们通常在注意到主机被阻止时将其列入白名单,但这更像是一种反应性方法,似乎效率不高。

这里可以使用通配符吗?

答案1

因为你跑postmap因为这/opt/zimbra/conf/postfix_blacklist意味着这是一个查找表; postmap 创建postfix_blacklist.db包含用于查找的哈希值的表。使用哈希查找表可加快搜索速度,但不允许使用通配符。

另一方面,你应该阅读影响 Postfix 的 ZCS 8.5 功能

从 ZCS8.5 及更高版本开始,Postfix 链接到 LMDB,这是我们在 OpenLDAP 中使用的相同后端。在 ZCS 8.0 之前,Postfix 链接到 Berkeley DB。

根据本文和文档/opt/zimbra/conf/postfix_blacklist用于将 IP 列入黑名单,还有另一个文件,,/opt/zimbra/conf/postfix_rbl_override用于将 RBL 黑名单 IP 地址列入白名单。

  • haspostfix_blacklist语法198.51.100.20 REJECT
  • haspostfix_rbl_override语法198.51.100.20 OK
  • 两者都使用 IP 地址而不是主机名,并且每行只有一个 IP 地址。

答案2

从 Zimbra 8.7 开始,您可以创建包含地址和/或域的混合黑名单(请参阅此处经过认证的 Zimbra 8.7 文档:https://wiki.zimbra.com/wiki/Domain_level_blocking_of_users

1)使用 zimbra 用户,创建文件 /opt/zimbra/common/conf/postfix_reject_sender

2)添加拒绝的地址和域的列表,如下所示:

  • [电子邮件保护]拒绝
  • domainX.com 拒绝

    不要使用“*”作为通配符,我试过了,它破坏了 MTA!

3)执行zimbraMtaSmtpdSenderRestrictions:

zmprov ms'你的zimbra服务器名称'+zimbraMtaSmtpdSenderRestrictions“check_sender_access lmdb:/opt/zimbra/common/conf/postfix_reject_sender”

注意:将“yourzimbraservername”替换为您的 zimbra 服务器的 FQDN

4)运行POSTMAP:

/opt/zimbra/common/sbin/postmap /opt/zimbra/common/conf/postfix_reject_sender

5)为了让更改立即生效,你可以使用以下命令强制执行:

zmmtactl 重启

注意:网络上的许多说明都涉及 Zimbra 8.5 和 8.6,请确保您参考的说明适用于 Zimbra 8.7

相关内容