Last Update: "2008/05/09 09:31:50 makoto"
- Spamass-milter: -xオプション
-
http://slashdot.jp/~Ryo.F/journal/356935
spamass-milter
milter というのは mail filter です。この spamass-milter を入れることにより
MTA から
spamassassin
を呼べるようになります。
mail/spamass-milter で make package すると、mail/spamassassin も make package
してくれます。最後に次のような表示が出ます。
The following files should be created for spamass-milter-0.3.0nb4:
/etc/rc.d/spamass-milter (m=0755)
[/usr/pkg/share/examples/rc.d/spamass-milter]
つまりこれは
sudo cp -p /usr/pkg/share/examples/rc.d/spamass-milter /etc/rc.d
しなさいということです。
sendmail
の場合は
cf
に次の行を加えて ./Build hoge.cf します(次の行は実際には一行です)。
INPUT_MAIL_FILTER(`spamassassin',
`S=local:/var/run/spamass.sock,, F=, T=C:15m;S:4m;R:4m;E:10m')
spamass-milter が動作するためには、
spamassassin が別途必要なのですが、設置は依存関係で自動で入ります。しかし
起動は自動では行なわれませんので、
spamassassin
にあるように
sudo cp -p /usr/pkg/share/examples/rc.d/spamd /etc/rc.d
のようにして
/etc/rc.d/spamd を用意します。/etc/rc.conf に次の二行を加えます。
spamass-milter=YES
spamd=YES
その上で(もしすぐに有効にしたいなら)
/etc/rc.d/spamd start
/etc/rc.d/spamas-milter start
のようにします。
上にも少し書きましたが、/etc/rc.conf の変更前なら
次のようにして試しに起動することも可能です。
local socket name /var/run/spamass.sock unsafe
106 16:20 sudo cp -p /usr/pkg/share/examples/rc.d/spamass-milter \
/etc/rc.d/spamass-milter
109 16:20 env spamass_milter=YES sudo /etc/rc.d/spamass-milter start
機械の起動時に自動で spamd/spamass-milter を起動するには
/etc/rc.conf に次のように書いておきます。
spamd=YES
spamass_milter=YES
メール見出
うまく動くと、次のような行がメールの header に追加されます。
X-Spam-Status: No, score=1.9 required=5.0 tests=AWL,DATE_IN_PAST_12_24,
SPF_HELO_SOFTFAIL autolearn=no version=3.1.0
X-Spam-Level: *
X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on mail.example.com
これを利用して
sieve
や
procmail
を使って spam メールを分類、あるいは廃棄します。
設定
設定は次のところにあります。名前の通り、一つ目が設定例で、二つ目が運用版です。
/usr/pkg/share/examples/spamassassin/local.cf
/usr/pkg/etc/spamassassin/local.cf
これに関連して、設定方法の説明は次の方法で見ることが出来ます。
perldoc /usr/pkg/lib/perl5/vendor_perl/5.8.0/Mail/SpamAssassin/Conf.pm
あるいは
perldoc Mail/SpamAssassin/Conf.pm
問題
機械の能力によっては次のようにして、milter が効かないことがあるようです。
Aug 25 09:08:26 hostname spamc[9587]:
connect to spamd on 127.0.0.1 failed,
retrying (#3 of 3): Connection timed out
Aug 25 09:08:27 hostname spamc[9587]:
connection attempt to spamd aborted after 3 retries
以下は以前に見たことのある問題です。最近は解決している気がします。(2007/08 記)
Can't locate Mail/SPF/Query.pm
cd /home/makoto/.cpan/sources
wget http://www.cpan.org/MIRRORED.BY
touch MIRRORED.BY
touch to avoid following message:
(Your /home/makoto/.cpan/sources/MIRRORED.BY is older than 60 days)
sudo perl -MCPAN -e shell
cpan> o conf prerequisites_policy ask
cpan> install Mail::SPF::Query
Can't locate Net/CIDR/Lite.pm
cd pkgsrc/net/p5-Net-CIDR-Lite/
sudo make package
sudo perl -MCPAN -e shell
cpan> o conf prerequisites_policy ask
cpan> install Mail::SPF::Query
...
Writing
/usr/pkg/lib/perl5/site_perl/5.8.0
/powerpc-netbsd-thread-multi/auto/Mail/SPF/Query/.packlist
Appending installation info to
/usr/pkg/lib/perl5/5.8.0/powerpc-netbsd-thread-multi/perllocal.pod
/usr/bin/make install -- OK
cpan>
tuning
Aug 26 00:12:34 hostname spamass-milter[284]:
Could not retrieve sendmail macro "b"!.
Please add it to confMILTER_MACROS_ENVRCPT
for better spamassassin results
|