長南です。 宮尾さんのメールより [vine-users:078064] > > > > Path を当てたらエラーになる原因、お分かりになりましたか。 > > > これ、何をおっしゃっているかわかりませんでした。 > > 一昨日、SpamAssassin の設定ファイル(レシピって言うんですか)で > > 日本語を利用できるようにするパッチを当ててみて、もしかしたら > > このことではないかと思い当たりました。そうなんでしょうか。 > > そうです。そうです。 あっ、誤解させてしまったようですね。と言うより、わたしが 宮尾さんの文章を誤解していたのか。 spamassassin は日本語を直接扱うことができません。そこで、 sample-japanese-local.cf を見ていただくとわかるのですが、 Subject に「はじめまして」や「初めまして」があることをチェック しようとしたら、こんなふうにルールを書くことになります。 Subject =~ /(\$O\$8|=i)\$a\$\^\$7\$F/ JIS コードによる表現から開始・終了コードを取って、ASCII 文字で表し、 正規表現で用いる特殊文字についてはバックスラッシュでエスケープして いる、と言えばよいのでしょうか(ちょっと不正確な言い方かもしれません)。 sample-japanese-local.cf のコメントに書いてあるように、 echo "はじめまして" |nkf -j|awk '{gsub(/\x1B[$(]B/,"");print}' echo "初めまして" |nkf -j|awk '{gsub(/\x1B[$(]B/,"");print}' あるいは、 echo "はじめまして" |nkf -j |od -c などとやってみると、感じがわかると思います。 面倒だし、わかりにくいでしょう。そこで、日本語を直接使って (UTF-8 ですが)、local.cf などのレシピを書けるようにした パッチが、spamassassin-3.1.8-normalize-test8.patch などなのです。 もちろん、このパッチは spamassassin-3.1.8 のソースに当てます。 UTF-8 を使ったレシピは、やはり「日本 spamassassin ユーザ会」の サイトにあります。 http://spamassassin.jp/download/rules/ ですから、日本語スパムのチェックは sample-japanese-local.cf を レシピに使ってもできます。また、spamassassin にパッチを当ててから、 「日本 spamassassin ユーザ会」で配布している jp_rules-20060729.cf を 利用してもできます。どちらでもよいのです。 > [vine-linux:078057] で > > > local.cfとsample-japanese-local.cfを見比べるとlocal.cfは > > config ファイルでsample-japanese-local.cfはスパム防止のレシピに > > 見えるのですが よく見くらべれば、おわかりになると思って、説明しなかったのですが、 /etc/mail/spamassassin/local.cf はレシピの骨組みです。 sample-japanese-local.cf の方は、日本語スパムもチェックできるように、 それに肉付けしたレシピの具体例。ですから、宮尾さんが次のように おっしゃているとおりなのです。 > 私は今回、長南さんからの投稿が有るまで、sample-japanese-local.cf > の内容をどこかの設定にコピー&ペーストしたら終わりかと思っていたので、 > [vine-linux:078057] のような事を言いました。 すなわち、local.cf を念のため local.cf.org とリネームしてから、 sample-japanese-local.cf を local.cf という名前で /etc/mail/ spamassassin にコピーすればよい。オリジナルの local.cf を そのまま残し、sample-japanese-local.cf もそのままの名前で /etc/mail/spamassassin にコピーするだけでもよいかもしれません。 ただ、sample-japanese-local.cf を利用すると、「... undefined dependency ...」というメッセージが /var/log/maillog にたくさん 出るので(厳密な意味でのエラーではありません)、嫌だなと思って いたのです。しかし、そういったメッセージは「その個々のルールが 使えないよ」というだけで、害はなさそうです。 ですから、何も気にせずに sample-japanese-local.cf を使っても、 たぶん大丈夫でしょうし、スパムチェックがかなり利口になるだろうと 思います。まあ、わたしの推測が正しいか間違っているか、実際に使って、 スパムチェックが向上するかどうかで確かめてください。 なお、上記メッセージが気になるのなら、 /var/log/maillog と /usr/share/doc/spamassassin-3.1.8/README をよく読んで、 工夫すれば、消すことができます。 もう一度言いますが、sample-japanese-local.cf を使おうと、 日本語でレシピが書けるようにパッチを当てようと、どちらでも よいのです。あるいは、どこかから適当なレシピを探し出してきて、 local.cf にしようと。 -- 長南洋一