如何通过用户设置规则使我的 Postfix 服务器在 Debian 6上运行对电子邮件进行排序?我指的是像你一样的用户规则。 Outlook或Gmail。
一些“pseaudocode”来表明我的意思......
IF SENT TO '*@test.com' INSERT INTO FOLDER 'TestCom'
答案 0 :(得分:3)
一种方法是设置Dovecot进行本地交付,然后使用Sieve规则将电子邮件分发到不同的IMAP文件夹。见example
require ["fileinto", "regex" ];
if header :contains "List-ID" "ip@v2.listbox.com" { fileinto "INBOX.list.ip"; stop; }
if header :contains "List-Post" "<mailto:gnu.emacs.gnus@googlegroups.com>" { fileinto "INBOX.list.gnu-emacs-gnus"; stop;}
if address :is "sender" "repoze-dev-bounces@lists.repoze.org" { fileinto "INBOX.list.repoze-dev"; stop; }
if address :is "sender" "owner-freebsd-net@freebsd.org" { fileinto "INBOX.list.freebsd-net"; stop; }
if anyof (
address :is "from" "support@myclient.com",
address :is "from" "x@mail.myclient.com",
address :is "from" "root@myclient.com") { fileinto "INBOX.in.myclient.zw"; stop; }
答案 1 :(得分:2)
请注意,您要查找的是 MDA a.k.a. 邮件传递代理。 MDA 是 MTA (例如Postfix)和 MUA (例如Thunderbird,MS Outlook)之间的中介,并且是可选的,它不是在大多数环境中安装或使用。 Postfix 是 MTA a.k.a. 邮件传输代理。根据各种不同需求过滤掉用户电子邮件通常不是 MTA 的工作。这是 MDA 的工作。它接收 MTA - 邮件服务器收到的电子邮件消息,并将其传递给用户帐户。
要将邮件实际发送到最终用户的邮箱,我建议您使用 Procmail 。它可用于将传入的电子邮件分类到单独的文件/文件夹中。它功能多样,功能强大,并且具有复杂的正则表达式支持,并且可以与功能强大的垃圾邮件过滤程序SpamAssassin协同工作。用户可以在其HOME目录中放置.procmailrc
以进一步调整传入的电子邮件传递。例如,请查看.procmailrc
中的以下代码段:
:0:
* ^Subject: pr.*mail
procmail-mail
上述内容以“主题”中的“pr”开头并包含后面的字符串“mail”,该电子邮件将保存在名为 procmail-mail / 的文件夹中。
两个最常用的 MDA 是Procmail和Fetchmail。例如,Ubuntu 13.04支持Procmail和Dovecot。另一方面,如上所述,Sieve是一种与任何操作系统或体系结构无关的邮件过滤语言。