2011年5月24日 星期二

讓 Spamassassin 學習辨別垃圾郵件

Spamassassin 的 Spam 分數可以由“學習”的方式來調整, 最好的方式是分別建立 blacklist (黑名單, 垃圾郵件) 和 whitelist (白名單, 非垃圾郵件) 的信箱:

CODE:

#useradd -M blacklist

#useradd -M whitelist
以後如果收到垃圾信的話, 就把信 "以附加檔案方式轉寄" 給自己 Server 上的 blacklist 信箱; 如果是被 Spamassassin 誤判為垃圾信的郵件, 就把它轉寄給 whitelist. 也就是說, 讓這兩個信箱收集可以給 Spamassassin 學習的範本. 學習的指令如下:

學習黑名單:

CODE:

#sa-learn -D --showdots --spam --mbox /var/mail/blacklist學習白名單:

CODE:

#sa-learn -D --showdots --ham --mbox /var/mail/whitelist學習完成後, 即可將 blacklist 與 whitelist 信箱清空:

CODE:

#true > /var/mail/blacklist; true > /var/mail/whitelist讓系統每小時自動學習黑/白名單: 於 /etc/cron.hourly 建立一個可執行的 shell 檔, 內容為:

CODE:

#!/bin/sh

if [ -s /var/spool/mail/blacklist ]; then

sa-learn --spam --mbox /var/spool/mail/blacklist > /dev/null 2>&1
true > /var/spool/mail/blacklist

fi

if [ -s /var/spool/mail/whitelist ]; then

sa-learn --ham --mbox /var/spool/mail/whitelist > /dev/null 2>&1
true > /var/spool/mail/whitelist

fi

沒有留言:

張貼留言