close

安裝選項取消SQLITE2,改用POSTGRESQL74,編譯、安裝後執行:

chmod o+x /usr/local/bin/dspam

讓大家都能執行dspam(好孩子不要學:-)。接著建立資料庫,pgsql_objects.sql是用smallint,一下就爆炸了,所以改成int:

createdb -E SQL_ASCII dspam
cat /usr/local/share/examples/dspam/pgsql/pgsql_objects.sql | sed "s/smallint/int/" | psql dspam

再修改相關設定檔。

dspam.conf:
TrustedDeliveryAgent "/usr/local/bin/procmail" 
UntrustedDeliveryAgent "/usr/local/bin/procmail -d %u" 
Preference "signatureLocation=headers" 
# Preference "showFactors=on" 
ParseToHeaders on

/usr/local/etc/postfix/main.cf:

virtual_alias_maps = hash:/usr/local/etc/postfix/virtual

/usr/local/etc/postfix/virtual,加入下列設定後執行postmap virtual:

@spam.zbwei.net spamuser
@fp.zbwei.net fpuser

/etc/aliases,加入下列設定後執行newaliases:

spamuser: "| /usr/local/bin/dspam --class=spam --source=error" 
fpuser: "| /usr/local/bin/dspam --class=innocent --source=error"
/usr/local/etc/procmailrc:
:0fw
| /usr/local/bin/dspam --stdout --deliver=innocent,spam

用--deliver=innocent,spam會讓所有email通過,如果要讓被DSPAM當成spam的email人間蒸發,用--deliver=innocent即可。

$HOME/.procmailrc:
:0:
* ^X-DSPAM-Result: Spam
/home/forth/mail/spam

將DSPAM認為是垃圾信的email放進專門用來放垃圾信件的spam檔。最後執行postfix reload讓設定生效就可以了。收信時,可以把應該是spam卻未分類成spam的email「以附加檔案方式轉寄」至spam dash forth at spam dot zbwei dot net,錯認為spam的email寄至fp dash forth at fp dot zbwei dot net,讓DSPAM檢討改進。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Forth 的頭像
    Forth

    不就是個blog

    Forth 發表在 痞客邦 留言(0) 人氣()