包含 @ 的 Linux 用户名的 Postfix 虚拟域映射

包含 @ 的 Linux 用户名的 Postfix 虚拟域映射

我无法让 Postfix 处理包含 @ 的 Linux 用户名

Postfix 有虚拟域映射,/etc/postfix/virtual

它看起来像这样:

domain.ru                       domain.ru
[email protected]         [email protected]
[email protected]             [email protected]

这意味着所有发给用户的邮件都[email protected]必须[email protected]发送给名为[email protected]

但是,当我@在 Linux 用户名中使用“no”时,例如me.example.ru,一切按正常方式进行。

我发现除非加载了标志,否则saslauth拒绝使用。是否应该对 Postfix 做一些类似的事情,以使其以相同的方式工作?[email protected]-r

我也尝试过me\@example.ru,将其转义。没有效果。我遗漏了什么?

答案1

根据提示[电子邮件保护]您应该使用virtualmailer 而不是localmailer 来投递邮件到[email protected]

据我了解,您可以:
1. 将example.ru域放入 virtual_mailbox_domains 列表中
2. 使用虚拟邮箱映射 (vmailbox) 指定[电子邮件保护]mailbox-file/maildir
3. 使用虚拟 uid 映射设置[email protected]邮箱文件的所有者
[它选择操作系统帐户/用户(数字)标识符]

http://www.postfix.org/VIRTUAL_README.html#virtual_mailbox


[postfix-users] 带有 @ 的操作系统帐户/用户

收件人:postfix-users at postfix org
主题:回复:带有 @ 的 OS 帐户/用户
日期:2015 年 7 月 30 日星期四 11:21:12 -0400 (EDT)
消息 ID:<[电子邮件保护]>
来自:[电子邮件保护](Wietse Venema)
[...]
无论如何,使用带有 @ 的 UNIX 系统帐户名是一个错误,我不会付出很大的努力来让这变得简单。

维特泽

答案2

main.cf用于该目的的指令是什么/etc/postfix/virtual?有一堆maps

我会用它来做这样的main.cf事情

recipient_bcc_maps = hash:/usr/local/etc/postfix/recipient_bcc
sender_bcc_maps = hash:/usr/local/etc/postfix/sender_bcc

您可以在其中操作已发送/接收电子邮件的副本。

的语法recipient_bcc/sender_bcc非常简单(就像 all in 一样postfix

# Email to catch                       email to send copy
[email protected]                [email protected]
[email protected]                    [email protected]

使用优势bcc- 您可以指定一些管理员并监视他或将相关[email protected]电子邮件保存在他的帐户中并保持[email protected]帐户干净,当您收到消息时,您可以安全地删除它,因为您知道您在真实帐户中始终有一份副本。如果指定管理员删除一些消息,无论如何,如果他/她出了问题,您都会有一份副本作为证据。

相关内容