Sun Java System Messaging Server 6 2005Q4 管理指南

Procedure向主题行添加 SpamAssassin 结果字符串

通过向主题行添加 SpamAssassin 结果字符串,用户可以确定是否要阅读带有 SpamAssassin 分数的邮件。例如:

Subject: [SPAM True ; 99.3 / 5.0] Free Money At Home with Prescription Xanirex!

请注意,如果将 USE_CHECK 设置为 0,则可以将结论字符串与匹配的 SpamAssassin 测试列表一同返回(请参见SpamAssassin 选项中的SpamAssassin 选项)。因为此列表可能会很长,所以最好将 USE_CHECK 设置为 1

步骤
  1. 指定要过滤的邮件。

    请参见将垃圾邮件归档到单独的文件夹中的步骤 3

  2. 创建 SpamAssassin 配置文件。

    将垃圾邮件归档到单独的文件夹中介绍了此步骤。mode=1 指定如果系统发现邮件为垃圾邮件,则返回 SpamAssassin 结果字符串。


    host=127.0.0.1
    port=2000
    mode=1
    debug=1
                      

    hostport 分别指定运行 spamd 的系统的名称,以及 spamd 侦听外来请求的端口。mode=1 指定如果系统发现邮件为垃圾邮件,则返回 SpamAssassin 结果字符串。debug=1 指定在 SpamAssassin 库中启用调试。

  3. option.dat 文件中添加以下各行:


    !for Spamassassin
    spamfilter1_config_file=/opt/SUNWmsgsr/config/spamassassin.opt
    spamfilter1_library=/opt/SUNWmsgsr/lib/libspamass.so
    spamfilter1_optional=1
    spamfilter1_string_action=data:,addtag “[SPAM detected: $U]”;
                      
    

    如前面示例所述,前三个选项指定了 SpamAssassin 配置文件、共享库以及共享库失败时 MTA 继续运行。下面一行

    spamfilter1_string_action=data:,addtag "[SPAM detected $U]";

    指定要向 Subject: 行添加标记。此标记的文字前缀为 SPAM detected,后跟 field 字符串(默认值为:Spam-Test),再后跟由 SpamAssassin 返回的 "[result string]"。因为已在SpamAssassin 配置示例中指定 mode=1,所以将返回 SpamAssassin 结果字符串。因此,主题行将类似以下内容:

    Subject: [SPAM detected Spam-Test: True ; 11.3 / 5.0] Make Money!

    也可以同时使用 addheaderaddtag

    spamfilter1_string_action=data:,require ["addheader"];addtag "[SPAM detected $U]";addheader "Spamscore: $U";

    以获得如下邮件:

    Subject: [SPAM detected Spam-Test: True ; 12.3 / 5.0] Vigaro Now!Spamscore: Spam-Test: True ; 12.3 / 5.0

    可设置 spamassassin.opt 中的 field= 来删除 Spam-Test 默认值。将返回以下较干净的邮件:

    Subject: [SPAM True ; 91.3 / 5.0] Vigaro Now!Spamscore: True ; 91.3 / 5.0

  4. 重新编译配置,重新启动服务器,然后启动 spamd 守护进程。

    请参见将垃圾邮件归档到单独的文件夹