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

Procedure向垃圾邮件中添加包含 SpamAssassin 分数的标题

此示例将标题 Spam-test: result string 添加至已由 SpamAssassin 确定为垃圾邮件的邮件。以下为标题示例:

Spam-test: True ; 7.3 / 5.0

其中,Spam-test: 为文字,其后的内容为结果字符串。True 表示邮件为垃圾邮件(false 表示不是垃圾邮件)。7.3 为 SpamAssassin 分数。5.0 为阀值。该结果对于设置 Sieve 过滤器非常有用,该过滤器可以对高于某一分数或介于某分数之间的邮件进行归档或放弃。

此外,将 USE_CHECK 设置为 0 会将结论字符串与匹配的 SpamAssassin 测试列表一同返回。请参见表 14–4 中的 USE_CHECK。

步骤
  1. 指定要过滤的邮件。将垃圾邮件归档到单独的文件夹中的步骤 3 说明了此操作

  2. 创建 SpamAssassin 配置文件。

    使用 spamfilter_configX_file 指定此文件的名称和位置(见下一步)。其中包含以下各行:


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

    hostport 分别指定运行 spamd 的系统的名称,以及 spamd 侦听外来请求的端口。mode=1 指定如果系统发现邮件为垃圾邮件,则返回 SpamAssassin 结果字符串。field= 指定 SpamAssassin 结果字符串的字符串前缀。在此示例中,由于我们要在 Sieve 脚本中指定字符串前缀,因此无需前缀。debug=1 指定在 SpamAssassin 库中启用调试。

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


    !for Spamassassin
    spamfilte1r_config_file=/opt/SUNWmsgsr/config/spamassassin.opt
    spamfilter1_library=/opt/SUNWmsgsr/lib/libspamass.so
    spamfilter1_optional=1
    spamfilter1_string_action=data:,require 
    ["addheader"];addheader "Spam-test: $U";
                      
    

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

    spamfilter1_string_action=data:,require ["addheader"];addheader "Spam-test: $U";

    指定了要向垃圾邮件添加的标题。标题带有文字前缀 Spam-text: ,后跟 SpamAssassin 返回的字符串。因为在上一步中指定了 mode=1,所以将返回 SpamAssassin 结果字符串。例如:True; 7.3/5.0

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

    请参见SpamAssassin 配置示例