MailmanにSpamOracle
を仕掛けました。某メーリングリストに毎日百件ぐらい来るspamを手動でmoderateするのが面倒になってきたので(当たり前)。
後のために詳しく:
- /etc/mail/aliasesの
myml: "|/usr/local/mailman/mail/mailman post myml"
みたいな行をコメントアウトして
myml: "|/usr/bin/procmail /home/users/myname/.procmailrc-myml"
みたくする。
- procmailrcは
:0fw | /usr/local/bin/spamoracle -f /home/users/myname/.spamoracle-myml.db mark :0 | /usr/local/mailman/mail/mailman post myml
みたいな感じ。ownerとgroupはちゃんとrootとmailなどにする。
以下は毎日:
- mailmanのwebインターフェースのpending requestsで
javascript:var el=document.forms[0].elements;for (var i=0; i<el.length;i++) if (el[i].type=='checkbox' && (el[i].name=="discardalldefersp" || el[i].name.substring(0,15)=="senderpreserve-")) void(el[i].checked=true);
みたいなjavascriptを、あらかじめブックマークしておいて実行
- cronで
#!/bin/sh cd /usr/local/mailman/spam/ FILES=`ls /usr/local/mailman/spam/` if [ X"$FILES" = X ]; then exit 0; fi /bin/cp /home/users/myname/.spamoracle-myml.db /home/users/myname/tmp/ /usr/local/bin/spamoracle -f /home/users/myname/tmp/.spamoracle-myml.db add -spam *.msg rm -f *.msg chown root /home/users/myname/tmp/.spamoracle-myml.db chgrp mail /home/users/myname/tmp/.spamoracle-myml.db chmod 640 /home/users/myname/tmp/.spamoracle-myml.db mv -f /home/users/myname/tmp/.spamoracle-myml.db /home/users/myml/
みたいなスクリプトを実行