メーリングリストを120%活用するテクニックオープンソースソフトウェアの育て方(2/5 ページ)

» 2009年09月01日 00時01分 公開
[Karl Fogel, ]

スパム対策

 今、この文章を書いている時点と実際に本書が出版された時点を比べても、スパムの深刻度は倍増していることでしょう。少なくとも、そう感じるくらいのレベルにはなっているはずです。つい最近までは、スパム対策をまったく行わなくてもメーリングリストを普通に運営できていました。ごくまれに変な投稿が行われることもありましたが、気になるほどのものではなかったのです。しかし、そんな時代はとっくに終わってしまいました。現在では、スパム対策をまったくしていないメーリングリストはあっという間にゴミメールの山となってしまいます。そんなメーリングリストは使い物にならないでしょう。スパムは決して野放しにしてはいけません。

 本稿では、スパム対策を2種類に分けて考えます。1つはメーリングリストにスパムが配信されないようにすること。もう1つは、メーリングリストの参加者のメールアドレスをスパム業者に収集されないようにすることです。前者の方がより大事なので、まずはそちらから考えていきましょう。

  • 投稿のフィルタリング

 スパム投稿を防ぐ基本的な方法は、次の3つです。ほとんどのメーリングリストソフトウェアは、これらの機能をすべて提供しています。また、これらの方法は、どれか1つだけを使うのではなく組み合わせて使うと有効です。

1. メーリングリストのメンバーからの投稿のみを自動配信する

 これはある程度有効で、管理者にはほとんど負担が掛かりません。これを行うには単にメーリングリストソフトウェアの設定を変更するだけだからです。しかし、自動承認されなかった投稿を単に捨ててはいけません。そうではなく、自動承認されなかった投稿は管理者がいったんチェックしましょう。そうする理由は次の2つです。まず第一に、メーリングリストのメンバー以外からの投稿も受け付けたいからです。ちょっとした質問や提案がある人が、いちいちメーリングリストに参加しなければメールを投稿できないのは不便です。もう1つ、メーリングリストのメンバーであっても、登録しているアドレス以外のメールアドレスから投稿するかもしれません。メールアドレスは、人を識別する手段としてはあまり信頼できるものではありません。メールアドレスにあまり頼りすぎないようにしましょう。

2. 投稿を、いったんスパムフィルタリングソフトウェアにかける

 メーリングリストソフトウェアが対応していれば(ほとんどは対応しています)、投稿内容をスパムフィルタリングソフトウェアに渡すことができます。自動スパムフィルタリングは完ぺきなものではありません。また、今後も決して完ぺきなものにはならないでしょう。スパムの送信者とフィルタの作者との戦いは永遠に続くのです。しかし、フィルタリングソフトを使用することで、管理者が手作業で処理すべきスパムを激減させることができます。人手で処理すべき内容が多くなればなるほど、自動フィルタリングは有用です。

 ここでは、スパムフィルタの設定方法については説明しません。ご利用のメーリングリストソフトウェアのドキュメントを参照してください(本章の後半のソフトウェア項で詳しく説明します)。メーリングリストソフトウェアにはたいてい、自前のスパム対策機能が組み込まれています。しかし、サードパーティーのフィルタを使いたいこともあるでしょう。わたしがよく利用しているのは、SpamAssassinSpamProbeです。もちろんこれら以外にもオープンソースのスパムフィルタはたくさんありますし、その中には素晴らしいものもあるでしょう。わたしはたまたまこの2つで満足しているので、ほかのものをあまり調べていないだけのことです。

3. モデレートする

 登録されているメールアドレスからの投稿ではないので自動配信はされませんでした。また、スパムフィルタを通した結果、スパムではないと判断されました。そのような投稿に対する最後の手段はモデレートです。メールの内容が特別なアドレスに送られ、人間がその内容をチェックした上で承認するか却下するかを決めるのです。

 投稿を承認する場合は、「その投稿だけを承認する」あるいは「その投稿を承認し、今後同じアドレスからの投稿があった場合は自動的に配信する」のいずれかの方式となります。ほとんどの場合は後者の方式を採るでしょう。そうすれば、将来のモデレートの負荷を下げられます。投稿の承認方法は、システムによって異なります。よくある方式は、特別なアドレスに対してコマンドを返信することです。例えば“accept”(この投稿だけを承認する)あるいは“allow”(この投稿および今後のすべての投稿を承認する)などのようになります。

 却下する場合は、通常は単に何もせずモデレートメールを無視します。メーリングリストソフトウェアは、その投稿を承認するという確認を受け取らない限り投稿を配信しません。つまり、単にモデレートメールを無視しておけばそれで用が満たされるのです。あるいは、“reject”や“deny”といったコマンドを明示的に返信することもあります。そうすると、同じアドレスから今後投稿があった場合にモデレート処理の前に自動的に却下してくれます。しかし、そんなことをしてもあまり意味はないでしょう。モデレートの主要な目的はスパムの防止であり、スパマーが同じアドレスからメールを何度も送るなんてあり得ないでしょうから。

 モデレートを乱用しすぎないようにしましょう。スパムを防ぐことと、まったく的外れな投稿(投稿するメーリングリストを間違えたなど)を防ぐことだけに限るべきです。モデレートシステムを使用すると、投稿者にだけ直接返信を返すことができますが、それを使ってメーリングリストにかんする質問に答えてはいけません。たとえ即答できるようなものであったとしてもです。そんなことをすると、どんな質問があったのかがコミュニティーに伝わりません。また、その質問に対してより適切に答えられる人がコミュニティーにいたとしても、答えるチャンスがなくなってしまいます。ほかの人が答えた内容も見ることができません。メーリングリストのモデレートは、ゴミメールや場違いなメールばかりにすることを防ぐためのものでしかなく、それ以上の何者でもありません。

  • アーカイブでのメールアドレスの処理

 メーリングリスト参加者のアドレスをスパマーに抜き取られないようにするには、アーカイブする際にメールアドレスをぼかすのが一般的です。例えば、「jrandom@somedomain.com」のようなアドレスを「jrandom_AT_somedomain.com」あるいは「jrandomNOSPAM@somedomain.com」あるいはそれと同様な(人間には理解できるような)形式に変換します。ありがちなメールアドレス収集ソフトウェアは、メーリングリストのアーカイブのWebページを読み込んで“@”を含む文字列を探します。従って、アドレスをこのように変換しておけば収集ソフト用の対策になります。これは、メーリングリストに直接送られてくるようなスパムには無意味です。そうではなく、リストの参加者のアドレスに直接スパムが送られるのを防ぐための仕組みです。

 このようにアドレスを隠すことには賛否両論があります。この機能を気に入っている人は、アーカイブではそうするのが当然だと思っており、もしそうなっていなければ非常に驚きます。しかし、中にはちょっとそれはやり過ぎだと考える人もいます。いくら人間にとっては理解できる形式であるとはいえ、いったん頭の中で変換しないと正しいアドレスが分からないからです。また、まったく無意味だという人もいます。いくらしっかりした符号化を行ったとしても、アドレス収集ソフトウェアはそれを理論上は理解できるはずだからです。しかし、アドレスの変換が有用であることは実証されています。こちらのページを参照してください。

 理想を言えば、このような処理は個々の好みで切り替えられるようにすべきでしょう。つまり、メーリングリストの参加者の個人設定ページで「自分のメールアドレスを符号化する/しない」を切り替えられるようにしておけばいいのです。しかし、そのように投稿者ごとや投稿ごとに設定を切り替えられるソフトウェアを見たことはありません。現状では、メーリングリストの管理者が全員の設定を一括で決めなければならないのです(アーカイブツールがメールアドレスの変換処理に対応していることを前提としていますが、中にはその機能がないものもあります)。

 わたしは、個人的にはどちらかというと変換処理を行う方が好きです。自分のメールアドレスをWebページなどに表記する際に、アドレス収集用ソフトウェア対策に非常に気を使っている人たちもいます。そのような人たちの努力がメーリングリストのアーカイブによって台無しになってしまうと、きっと非常に悲しむことでしょう。一方、アドレスが変換されていることによってアーカイブの利用者に多少不便を感じさせたとしても、そんなにたいしたものではないでしょう。しょせん、必要なたった一人のアドレスを正しい形式に戻すだけのことなのですから。

 ところで、メールアドレスの変換作業もまた、終わりのない戦いであることを覚えておきましょう。あなたがこれを読んでいるいままさにこの間にも、アドレス収集ソフトウェアは進化し続けています。ありがちなアドレス変換方法はすでに破られており、わたしたちはまた別の方法を考えなければならないのです。

content on this article is licensed under a Creative Commons License.

注目のテーマ