2007年10月23日 星期二

[spamassassin]自己動手安裝spamc/spamd

上週升級 mail 主機的痛苦之一,是套件庫裡雖有 spamassassin ,但是少了 spamc / spamd 。學校的 mail 主機,真正在用的人雖然不多,但是垃圾著實不少,還是得用 spamc / spamd 來得安全些。

既然套件庫沒有,那就自己抓 source 來安裝吧。


SpamAssassin 下載網頁: http://spamassassin.apache.org/downloads.cgi?update=200708092033

該網頁會自動幫你找一個合適的 mirror site 。

下載目前的最新版本:

wget http://apache.stu.edu.tw/spamassassin/source/Mail-SpamAssassin-3.2.3.tar.gz

安裝:

cd /usr/local/src
tar zxvf Mail-SpamAssassin-3.2.3.tar.gz
cd Mail-SpamAssassin-3.2.3
perl Makefile.PL
.....
default text: [the administrator of that system] 輸入管理員 email
.....

此時會有有兩個警告訊息:

optional module missing: Mail::DomainKeys
optional module missing: Mail::DKIM

沒有用到那兩個 plugin ,沒關係,接著編譯:

make
make install

順利的話,已經安裝完成了。兩個重要的執行檔分別在 /usr/local/bin/spamassassin 和 /usr/local/bin/spamc

接著建立 spamd 啟動程序:

cd spamd
cp redhat-rc-script.sh /etc/rc.d/init.d/spamd

設定 /etc/mail/spamassassin/local.cf (只列出修改的部份)

# 原來的*****SPAM*****太長了
rewrite_header Subject [SPAM]

# 關閉用附件方式處理垃圾信
report_safe 0

spamassassin 的預設行為,另寄通知信給收件者,並把判定為垃圾信的郵件變成附件。不過,垃圾信其實常部份是廣告信,有人愛著咧。讓他們來抗議是給自己找麻煩。所以,只要在 mail header 加上標籤,並修改主旨,剩下的讓收信人自己處理吧。

啟動 spamd

etc/rc.d/init.d/spamd start

完成了,來測試一下:

cd /usr/local/src/Mail-SpamAssassin-3.2.3
spamc < sample-nonspam.txt > nonspam.out
spamc < sample-spam.txt > spam.out

這時, nospam.out 和 spam.out 應該可以在表頭區看到下面的內容 ( 以 spam.out 為例 ) :

X-Spam-Flag: YES
X-Spam-Checker-Version: SpamAssassin 3.2.3 (2007-08-08) on mail.nlhs.tyc.edu.tw
X-Spam-Level: **************************************************
X-Spam-Status: Yes, score=1002.5 required=5.0 tests=GTUBE,NO_RECEIVED,
NO_RELAYS,RAZOR2_CF_RANGE_51_100,RAZOR2_CF_RANGE_E4_51_100,RAZOR2_CHECK
autolearn=no version=3.2.3
X-Spam-Report:
* -0.0 NO_RELAYS Informational: message was not relayed via SMTP
* 1000 GTUBE BODY: Generic Test for Unsolicited Bulk Email
* 1.5 RAZOR2_CF_RANGE_E4_51_100 Razor2 gives engine 4 confidence level
* above 50%
* [cf: 100]
* 0.5 RAZOR2_CHECK Listed in Razor2 (http://razor.sf.net/)
* 0.5 RAZOR2_CF_RANGE_51_100 Razor2 gives confidence level above 50%
* [cf: 100]
* -0.0 NO_RECEIVED Informational: message has no Received headers
Subject: [SPAM] Test spam mail (GTUBE)

搞定!

沒有留言:

張貼留言