后缀 – 如何将所有电子邮件redirect到一个用户,例如*@example.com→[email protected]

我正在使用我的电子邮件后缀。 我知道我可以使用/ etc / aliases和newaliases命令redirect某些电子邮件,例如,我可以通过在root: user / usr / etc / aliases中[email protected][email protected],然后运行新的别名。 然而,我想要做*: user的平等,以便所有发送到example.com的电子邮件都将发送到[email protected]

我该怎么做呢?

你的main.cf luser_relay = [email protected]就是你想要的。

要禁用用户检查并接受所有邮件,您需要添加local_recipient_maps =选项。 文档

你正在寻找的是一个虚拟的别名表,可以使用以下…

首先,您需要编辑或创build(如果它不存在) / etc / postfix / virtual文件。

 example.com whatever @example.com [email protected] 

在保存之后,你需要运行postmap /etc/postfix/virtual来生成索引/etc/postfix/virtual.db Postfix将会读取。

然后你需要编辑/etc/postfix/main.cf,并确保你有下面的行取消注释:

 virtual_alias_maps = hash:/etc/postfix/virtual 

这实际上会让postfix知道虚拟别名表并使用它。

与其他人一样使用luser_relay选项时luser_relay的问题是,本地交付代理将这作为未知地址的最后一个度假村的用户。 如果postfix只处理一个域的邮件,可以使用它,但是它可以掩盖其他configuration错误,并且如果处理多个域,可能会导致意外的结果。

我觉得有一点需要提醒的是,通过创build这种性质的通配符别名,您可以打开您的邮件系统,接受不存在的地址的邮件,并且有可能使邮箱快速填充为垃圾邮件而不存在邮箱。

其实很简单。 所有你需要做的就是把这样的东西放在你的main.cf文件中:

 virtual_alias_maps = regexp:/etc/postfix/virtual_alias 

正则regexp部分是诀窍。 另外,在/etc/postfix/virtual_alias你可以这样做:

 /^test/ [email protected] 

在这个例子中,您应该收到所有以“test”开头的邮件。 别忘了postmap / etc / postfix / virtual_alias并重新加载postfix。

结合以上对我来说最简单的答案/评论(我有一个主域名):
将以下内容添加到/etc/postfix/main.cf

 luser_relay = [email protected] (or local system user) local_recipient_maps = 

local_recipient_maps =没有设置值)

我使用本地用户的linux帐户,并将同一用户添加到/ etc / aliases,以便用户获取所有邮件到root,postmaster等。

您也可以在您的virtual_alias_maps合并相同的地址,并在同一主帐户中指定任何虚拟域名。

有关更多信息,请参阅luser_relay 。

如果要为mydomain使用全部通讯地址,可以使用/etc/aliases与正则expression式结合使用,如下所示:

/etc/postfix/main.cf添加
alias_maps = hash:/etc/aliases, regexp:/etc/postfix/catch-all-local.regexp

/etc/postfix/catch-all-local.regexp添加
!/^owner-/ your-catch-all-user

这应该做的伎俩。 它为我工作,并与虚拟_alias_maps并行设置。

我讨厌成为一个killjoy,但是你的问题是你正在使用Postfix。 Postfix使得这个练习非常困难。 我知道:几年前我必须这样做,花了几天和几天的时间才把它做好。 luser选项是正确的,但还有其他一些事情要做对。 (甚至这个选项的名字也表明Postfix的作者并不真的想支持这个)。

我build议切换到Courier。 因为它扩展了现有的别名系统,所以信使支持这种“全面通用”的方法。