我无法让 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
根据提示[电子邮件保护]您应该使用virtual
mailer 而不是local
mailer 来投递邮件到[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]
帐户干净,当您收到消息时,您可以安全地删除它,因为您知道您在真实帐户中始终有一份副本。如果指定管理员删除一些消息,无论如何,如果他/她出了问题,您都会有一份副本作为证据。