2006-10-04 (Wed)
■[pc][spam]whitelisterとSQLgreyとRgrey/Starpitの共通点

というのがあると知った。
これは、Greylistingサーバ等の前に、「怪しくない」相手の場合に素通ししてしまうことを目的としたもの。
具体的には、いくつかのRBLやRHSBLを使って、接続元IPやHELOやMAILFROMをチェックして、どれにも引っかからなければOKを返すようになっているらしい。
これはRgreyとかStarpitとかで、S25Rに引っかからなければ素通しというのと、コンセプトとしてはほぼ同じことになると思う。
ちなみに、参考にwhitelisterのソース見たら、なんか見たことない書式だと思ったら、OCamlで書いてあった。読めねえよ orz てかOCamlのソース初めて見た。
(070425に修正と追記)
また、SQLgreyというpostgreyから派生したGreylistingサーバでも、「選択的に」greylistingを掛けられるようになっています。
discrimination.regexpという設定ファイルがあり、クライアントのIPだけじゃなくて、HELOのパターンだとか、sender fromのパターンだとかでも怪しそうかどうか?を判断してるようです。
discrimination(区分け)関連のところでやっていて、これはオプションなので、これをオンに設定しないと使われないようです。
最初、正規表現で書かれた動的IPっぽいパターンと、メールサーバっぽいパターンが用意されていて、動的IPっぽいパターンに引っかかり、メールサーバっぽいパターンでなければGreylisting掛ける、というコードだと思ってたんですが、これはクラスCのIPでオートホワイトリストと比較するようにチェックを緩くする、というためのものでした。
これはマッチさせるパターンが違うだけで、Rgreyと全く同じことを狙っているものだ。
SQLgreyの動的IPパターン
(^|[0-9.x_-])(abo|br(e|oa)dband|cabel|(hk)?cablep?|catv|cbl|cidr|d?client2?|cust(omer)?s?|dhcp|dial?(in|up)?|d[iu]p|[asx]?dsld?|dyn(a(dsl|mic)?)?|home|in-addr|modem(cable)?|(di)?pool|ppp|ptr|rev|static|user|YahooBB[0-9]{12}|c:alnum:?{6,}(\.[a-z]{3})?\.virtua|[1-9]Cust[0-9]+|AC[A-Z][0-9A-F]{5}\.ipt|pcp[0-9]{6,}pcs|S0106:alnum:?{12,}\.[a-z]{2})[0-9.x_-]
メールサーバっぽいパターン(smtp_server.regexp)
^(.+[._-])*(apache|bounce|bulk|delay|d?ns|external|extranet|filter|firewall|forward|gateway|gw|m?liste?s?|(bulk|dead|mass|send|[eqw])?mail(er)?|e?mail(agent|host|hub|scan(ner)?)|messagerie|mta|v?mx|out(bound)?|pop|postfix|w?proxy|rela(is|y)|serveu?r|smarthost|v?smtp|web|www)(gate|mail|mx|pool|out|server)?[0-9]*[._-]
- 45 http://s25r.blogspot.com/
- 43 http://s25r.blogspot.com/2006/10/sqlgrey.html
- 31 https://www.google.co.jp/
- 29 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rls=GGLJ,GGLJ:2006-27,GGLJ:ja&q=モーグル
- 19 http://www.gabacho-net.jp/anti-spam/
- 16 http://www6.airnet.ne.jp/tomohiro/
- 13 http://my.opera.com/itochan/blog/2006/10/20/m2
- 10 http://d.hatena.ne.jp/teleskier/
- 9 http://search.yahoo.co.jp/search?p=モーグル・カバ&ei=UTF-8&fr=top_v2&x=wrt&meta=vc=
- 9 http://www.google.co.jp/hws/search?hl=ja&q=SQLgrey&client=fenrir&adsafe=off&safe=off&lr=lang_ja
でも、まっちゃも耐久も行く人って、さとうさん以外では自分くらいですよね(わら
自分もZAGの板が好きなので、別メーカー製造になっても
ZAG独特のシェイプの板は残って欲しいですね。
あー、プライベートが忙しくなりますよねえ… それはしかたないっす。
いや、まっちゃで、冬は志賀のあたりでイントラしてるという方とお話しさせていただきましたぜ。
>>ぷり
カメラマン?
>>がっちょさん
そうなのです。あの独特のシェイプは残って欲しいですよね。
日本だとサイコが結構近いシェイプらしいのですが、そのサイコもどうなるかわからん感じですし。
ZAGは見た感じ良い感じだったんですけどね。
スキー板の作り方みたいなサイトか本ないモンでしょうか?
いや、会社にプレス機もあるし…
さすがにプレスから自作、というサイトは見たこと無いです。
せいぜいスプリットボード化とかスワローテール化とかぐらいでしょうか。
ZAGは下手に大きくしようとせずに、小さく作ってたほうがよかったんじゃないかな、と思いました。
金型が必要な感じですけど。
http://www.telemarktips.com/SkiFactory.html
SQLGreyの説明(1.5.1以降の機能らしい)では,greylistの判定方法で,’smart’というロジックを追加したとあり,smartとは個人PC等(動的IP[dyn_fqdn.regexp]で判定)の場合は,IPアドレスでgreylistのチェックを行い,真っ当なサーバらしきものはクラスCのネットワーク単位でgreylistのチェックを行うと説明しているように見えます。
要するに,目的が,真っ当なサーバのIPアドレスの近辺は,真っ当なサーバだろうから,greylistのチェックは緩くするというものに見えます。(そりゃないだろ,とは思いますが,classcというパラメータもあり,これで負荷を下げているのかもしれません)
S25Rは,greylistのチェックの対象を絞り込むのが目的のように私は理解しています。sqlgreyは,ホワイトリスト以外の全てのサーバをgreylistの対象にしているようです。mta22.navi.gao.jpとかのいかにもメールサーバのパターンもgreylistでリトライさせています。
postgrey-MLでS25Rのことを書いたとき、SQLGreyでも同じようなことやってるよ、ということを言われて、それでそのまま鵜呑みにしていました。
まっとうそうならgreylist掛けないのではなく、近くのIPからでも許可する(再送の場合、再送専用のメールサーバから出される運用は良くあるため)という使い方らしい、ということですね。
今度ソース確認してみて、どう使われているのか確認したいと思います。
確かに、あのregexpにマッチしなかった場合はクラスCでオートホワイトリストと比較、そうでなかったら素のIPで比較、という用途に使っていました。
なので、ここの表記を修正させていただきます。
やっぱりSQLgreyでも同じことやってました。
実は、dyn_fqdn.regexpのほうではなくて、discrimination.regexpのほうでした。
SQLgreyは、クライアントのIPだけじゃなくて、HELOのパターンだとか、sender fromのパターンだとかでも怪しそうかどうか?を判断してるようです。
discrimination(区分け)関連のところでやっていて、これはオプションなので、これをオンに設定しないと使われないようです。