使用 postfix 将垃圾邮件发送到特殊文件夹

Tom*_*nal 9 email linux postfix spam

我有一个运行 amavis 和 SpamAssassin 的 postfix 服务器来帮助过滤垃圾邮件。被检测为垃圾邮件的邮件在发送到用户的 Maildir 时如下所示:

来自 tom@tom-mint 星期五 3 月 15 日 01:46:20 2013
返回路径:<tom@tom-mint>
X-Original-To: tom@my-server.com
交付至:tom@my-server.com
X 病毒扫描:my-server.com 上的 Debian amavisd-new
X-垃圾邮件标志:是
X-垃圾邮件分数:6.463
X-垃圾邮件级别:******
X-Spam-Status:是的,分数=6.463 tagged_above=2 required=6.31
    测试=[DRUGS_ERECTILE=2.221,FH_FROMEML_NOTLD=0.18,
    FSL_HELO_NON_FQDN_1=0.001,HELO_NO_DOMAIN=0.001,RCVD_IN_PBL=3.558,
    RDNS_DYNAMIC=0.363, TO_NO_BRKTS_DYNIP=0.139] autolearn=no
日期:2013 年 3 月 15 日星期五 01:46:19 -0400
至:tom@my-server.com
主题:***垃圾邮件*** 你好
用户代理:传家宝 mailx 12.5 6/20/10
内容类型:文本/纯文本;字符集=us-ascii
来自:tom@tom-mint (汤姆)
状态:RO

买点伟哥!

请特别注意前面带有 的主题***SPAM***X-Spam-Flag: YES标题。

配置postfix将这些邮件存储在特殊垃圾文件夹中的最佳方法是什么?

从我的研究来看,似乎我需要使用与 postfix 不同的邮件传递工具来实现这一点,但我不确定哪种方法是最好的。似乎有很多过时的信息,我想知道 postfix 是否能够将消息放入文件夹中。

邮件目录都是Maildir。

Ali*_*orm 8

对 postfix 的 local(8) 本地交付代理手册页的粗略阅读没有显示出这种类型的功能——正如预期的那样。这类任务通常被卸载到 procmail(可能通过邮箱命令指令),它可以处理你描述的任务,同时管理你的厨房水槽。procmail 的缺点是配置文件格式,优点是灵活性和易于找到的大量示例。如果最近出现了比 procmail 更好的东西,我不知道。

不过,为了我的钱,即使我找到了硬塞 MTA 的方法来做你想做的事,我也不会走那条路,因为这种邮件分拣方式有一种膨胀的方式而没有 MTA(我知道:也许交换可以,谁知道)也可以很好地作为灵活的消息处理程序/传递代理。

这是一个 procmail 配方,它可以根据唯一的标题内容执行您想要的操作(其中 DEFAULT 是交付目录,通常类似于 $HOME/Mail/):

:0
* ^X-Spam-Flag: YES
$DEFAULT/.Spam/
Run Code Online (Sandbox Code Playgroud)

编辑:( 这假定 maildir 邮箱格式,如下面的评论中所述。如果使用 mbox,请省略最后的斜杠)


Jen*_*y D 5

正如 Alien Life Form 所说,这是 procmail 的工作。这不是邮件服务器本地递送代理的替代品;这是一个单独的过程,将在 MDA 完成其工作调用。

每个想要让 procmail 对他们的邮件进行排序的用户都需要.forward在他们的主目录中创建一个名为的文件。该文件应包含以下内容:

"|exec /usr/local/bin/procmail || exit 75"
Run Code Online (Sandbox Code Playgroud)

完成与"标志和所有。

ALF 已经发布了一个基本.procmail文件,它将标记为垃圾邮件的邮件分类到一个单独的文件夹中。