以下示例将测试传入到本地邮件存储的邮件并放弃附带病毒的邮件。可以按照任何顺序来执行前三个步骤。
创建 SAVSE 配置文件。
下一步骤中指定了此文件的名称和位置。此处使用的名称为 SAVSE.opt。此文件的示例如下所示:
host=127.0.0.1 port=1344 mode=0 verdict=virus debug=1 |
host 和 port 分别指定运行 SAVSE 程序的系统的名称和侦听外来请求的端口(SAVSE 的默认端口为 1344)。mode=0 指定如果系统认为邮件带有病毒,则返回一个由 verdict 指定的字符串(此示例中该字符串为 virus)。debug=1 启用调试。有关 ICAP 配置参数的说明,请参见SAVSE 选项。
创建 option.dat 文件。示例:
! for Symantex Anti-virus Scan Engine spamfilter1_config_file=/opt/SUNWmsgsr/config/SAVSE.opt spamfilter1_library=/opt/SUNWmsgsr/lib/libicap.so spamfilter1_optional=1 spamfilter1_string_action=data:,discard |
spamfilter1_config_files 指定 SAVSE 配置文件。
spamfilter1_library 指定 SAVSE 共享库的位置。
spamfilter1_optional=1 指定 SAVSE 程序失败时,MTA 将继续运行。
spamfilter1_string_action 指定对垃圾邮件采取的 Sieve 操作。该值指定带有病毒的邮件将被放弃。因为这是默认值,所以无需指定,除非您要更改此值。
指定要过滤的邮件。
要过滤传入到本地邮件存储的所有邮件,请通过在 ims-ms 通道中添加 destinationspamfilter1optin spam 关键字来更改 imta.cnf 文件:
! ! ims-ms ims-ms defragment subdirs 20 notices 1 7 14 21 28 backoff "pt5m" "pt10m" "pt30m" "pt1h" "pt2h" "pt4h" maxjobs 4 pool IMS_POOL fileinto $U+$S@$D destinationspamfilter1optin virus ims-ms-daemon |
重新编译配置并重新启动服务器。只需要重新启动 MTA。无需执行 stop-msg。
# imsimta cnbuild # imsimta restart |
请确保已启动 SAVSE。
SAVSE 应已自动启动,但是如果没有自动启动,则可使用与下面的命令类似的命令:/etc/init.d/symcscna start
将 mode 设置为 0 可以与 spamfilterX_null_option 一起使用,以进行其他操作(例如,将被确定为垃圾邮件的邮件归档至特定文件夹)。例如:
spamfilter1_null_option=data:,require "fileinto"; fileinto "VIRUS";
请注意,大多数情况下最好不要将被感染的邮件归档到一个文件夹中。
将 mode 设置为 1 可用于启动一个操作。例如,可以将垃圾邮件结果包含到拒绝邮件中,方法是将 mode 设置为 1,并将 MTA 中的 spamfilterX_string_action 选项设置如下:
spamfilter1_string_action=data:,require "reject"; reject "Message contained a virus [$U]";
与 fileinto 一样,使用 reject 操作来处理病毒并不是一个好的方法,因为它会将病毒发回给发件人。
还可以通过在 option.dat 文件中添加一行,来向垃圾邮件标题中添加标记。示例:
spamfilter1_string_action=data:,addtag "[SPAM detected!]";
无需考虑邮件是否被确认带有病毒而尽管采取操作的情况下,可以将 mode 设置为 2。随后可以被测试的标题字段的添加是明显的 mode 2 应用程序:
spamfilterX_string_action=data:,require ["addheader"];addheader "$U"