$mailfrom_notify_admin = "vscan\@$mydomain";
$ilfrom_notify_recip = "vscan\@$mydomain";
$mailfrom_notify_spamadmin = "vscan\@$mydomain";
# $QUARTNDR =&nsp;'''/ar/virusmails'''';
2.2修改postfix
在 /etc/postfix/master.cf&nb中
smtp inet n - n - - smtpd
改为如下:
smtp-amavis unix - - n - 2 smtp
-o smtp_data_done_timeout=1200
nbsp; -o disable_dns_lookups=yes
127.0.0.1:10025 inet n - n - - smtpd
-o content_filter=
注意 关于127.0.0.1:10025 的 content_filter 为空白,是因为在 postfix 的 main.cf 中,先前已有定义 content_filter 的话,可能会造成在本地邮件不停的转寄给自己,要是有这样的情况发生,postfix 的日志中会出现以下信息「Error: too many hops 」。
测试
hawk# /usr/local/sbin/postfix stop
hawk# /usr/local/sbin/postfix start
hawk# su - vscan
hawk# /usr/local/sbin/amavisd debug
启动另一个终端:
hawk# telnet 127.0.0.1 10024
Trying 127.0.0.1...
Connected to localhost.the9.com.
Escape crcrnbs;snsp;''''^]''''.
220 [127.0.0.1] ESMTP amavisd-new service ready
MAIL FROM:<cnhawk@the9.com>
250 2.1.0 Sender cnhawk@the9.com OK
RCPT TO:<cnhawk@the9.com>
250 2.1.5 Recipient cnhawk@the9.com OK
DATA
354 End data with <CR><LF>.<CR><LF>
Subject: Test 2
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
.
250 2.5.0 Ok, id=00116-02, BOUNCE <-- 出现这个表示系统已经认出这个邮件中含有 Virus
QUIT
2.3安装配置 Spamassassin
在最新的AMaVisd-new已经结合了Spamassassin功能,所以只要用 ports安装了 AMaVisd-ne,那 Spamassassin 也已经安装好了。
Port: amavisd-new-20030616.p5
Path: /usr/ports/security/amavisd-new
Info: Performance-enhanced daemonized version of amavis-perl
Maint: blaz@si.FreeBSD.org
Index: security
B-deps:
R-deps: arc-5.21e.8_1 freeze-2.5_1 lha-1.14i_1 lzo-1.08_1 lzop-1.01 p5-Archive-Tar-1.05 p5-Archive-Zip-1.06 p5-Authen-SASL-2.04 p5-Compress-Zlib-1.22 p5-Convert-TNEF-0.17 p5-Convert-UUlib-0.213 p5-Digest-HMAC-1.01 p5-Digest-MD5-2.27 p5-Digest-Nilsimsa-0.06 p5-Digest-SHA1-2.04 p5-File-Spec-0.82 p5-HTML-Parser-3.31 p5-HTML-Tagset-3.03 p5-IO-1.20 p5-IO-stringy-2.108 p5-MIME-Base64-2.20 p5-MIME-Tools-5.411a_2 p5-Mail-SpamAssassin-2.55 p5-Mail-Tools-1.58 p5-Net-1.16,1 p5-Net-DNS-0.40 p5-Net-Server-0.85 p5-PodParser-1.24 p5-Test-Harness-2.28 p5-Test-Simple-0.47_1 p5-Time-HiRes-1.50,1 p5-URI-1.25 p5-Unix-Syslog-0.100 razor-agents-2.36 unarj-2.43_1 unrar-3.20,2 zoo-2.10.1
如果服务器不需要 Spamassassin 的功能那这个步骤可以取消。
添加需要的用户
hawk# pw useradd spam -c "Spam Bayes Learner" -d /var/empty -s /sbin/nologin
hawk# pw useradd notspam -c "Not Spam Bayes Learner" -d /var/empty -s /sbin/nologin
修改 /usr/local/etc/mail/spamassassin/local.cf
use_bayes 1
bayes_path /var/amavis/.spamassassin/bayes
auto_learn 1
auto_learn_threshold_nonspam -2
auto_learn_threshold_spam 15
修改 /usr/local/etc/amavisd.conf
$max_servers = 2;
$max_requests = 10;
$child_timeout=5*60;
@bypass_virus_checks_acl = qw( . );
@local_domains_acl = ( ".$mydomain" );
$final_spam_destiny = D_PASS;
read_hash(\%wheitsender, ''''a/mvis/whitelist'''');
read_hash(\%blkitsender, ''''a/mvis/blacklist'''');
read_hash%pmlovers, ''''/v/mvs/spam_lovers'''');
# SpamAssassin settings
#$sa_local_tests_only = 1;
$sa_auto_whitelist = 1;
$sa_mail_body_size_limit = 64*1024;
$sa_tag_level_deflt = 4.0;