26.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>.