29.13. 使用 procmail

Contributed by Marc Silver.

procmail 是一个强大得惊人的过滤进入邮件的应用程序。 它允许用户定义 规则, 并用这些规则来匹配进入的邮件, 进而执行某些特定的功能, 或将这些邮件转发到其他信箱和/或邮件地址。 procmail 可以通过 mail/procmail port 来安装。 装好之后, 可以直接把它集成到绝大多数 MTA 中; 请参考您使用的 MTA 的文档了解具体的作法。 另外, procmail 可允许通过把下面的设置加入到用户主目录中的 .forward 文件中, 来启用 procmail 功能:

"|exec /usr/local/bin/procmail || exit 75"

接下来我们将介绍一些基本的 procmail 规则, 以及它们都是做什么的。 各种各样的规则, 都应该写到 .procmailrc 文件中, 而这个文件则必须放在用户的主目录下。

主要的规则, 也可以在 procmailex(5) 联机手册中找到。

将所有来自 的邮件, 转发到外部地址

:0
* ^From.*user@example.com
! goodmail@example2.com

转发所有不超过 1000 字节的邮件到外部地址

:0
* < 1000
! goodmail@example2.com

把所有发送到 的邮件放到信箱 alternate 中:

:0
* ^TOalternate@example.com
alternate

将所有标题为 Spam 的邮件发到 /dev/null

:0
^Subject:.*Spam
/dev/null

将收到的所有 FreeBSD.org 邮件列表的邮件, 转发到各自的信箱:

:0
* ^Sender:.owner-freebsd-\/[^@]+@FreeBSD.ORG
{
	LISTNAME=${MATCH}
	:0
	* LISTNAME??^\/[^@]+
	FreeBSD-${MATCH}
}

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.