#acl ToshinoriMaeno:admin,read,write All:read == 『お馴染さん方式』 == 「いちげんさん(初めてメイルを送ってきた相手)」に対しては、 『[[ゆっくり対応する]]』、『[[SMTP/一時エラー]]を返事する』という対応をします。 こうすることで、多くの spam (+virus) を撃退(受信拒否)できます。 1. ゆっくり対応すると spammerはしばしば送信をあきらめます。 通常のメイル送信ホストはつきあってくれるはずです。 1. 最後までつきあってくる spam ホストでも一時エラーを返事すると 多くは再送してきません。 1. 通常のホストは再送してきます。その時には受け取ります。 === 特徴など === 1. 一度目の接続には[[SMTP/一時エラー]]を返して再送を待つので、受け取るのが少し遅れます。 1. 遅延回避には [[ホワイトリスト]] を併用します。 1. DNS 逆引き情報を併用するとより効果的です。[[非通知遅延再送要求方式]] [[ホワイトリスト]](お馴染さんリスト)を用意しておくことから名づけました。 [[http://www.rikuryo.or.jp/home/column/naniwa/039.html|いちげんさん]] お断わり方式とも言っています。 1. 現在の spam の送信方法に対して有効です。(有効性、期間は検証中です。) 1. [[MTAでspamを撃退する方法]]の特徴を持ちます。 spamを送信するコストを上昇させます。 1. ホワイトリストの種類、内容、維持管理方法などにより、 いろいろな実装が考えられます。 一時エラー返答は昔からよく知られた手法で、 http://projects.puremagic.com/greylisting/ Greylisting (Evan Harris) , [[http://slashdot.org/article.pl?sid=03/06/20/168203&mode=nested&tid=111&tid=126|Slashdot の記事 (6/20)]] などでも使われています。 ------ * [[/使用結果]] [[/使用結果2]] [[/使用結果3]] * [[/応用]] 拡張案 * [[/考察、課題]] * [[非通知遅延再送要求方式]] * [[/討論]] spammer が適応してきたら * [[/コメント]] [[http://www.tokai-ic.or.jp/spam/|東海インターネット協議会での運用実験]] と [[TIC:AntiSpam 同所での議論]] [[http://www.reflection.co.jp/spam/|reflection.co.jp での運用]] === 実装の概要 === [[SpamJp:onazimi/diagram.png 全体像]] -- [[/開発の事情]] D. J. Bernstein さんの [[http://tools.qmail.jp/ucspi-tcp.html|ucspi-tcpパッケージ]]に含まれている [[http://tools.qmail.jp/ucspi-tcp/tcpserver.html|tcpserver]] を使って接続を制御します。 すこし改造した [[http://tools.qmail.jp/ucspi-tcp/rblsmtpd.html|rblsmtpd]] を使って、遅延と一時エラー返答します。 1. ホワイトリストにある相手からの接続は通常の SMTP デーモンに渡します。 1. 「いちげんさん」からの接続は rblsmtpd 内で通常より[[ゆっくりと対応します]]。 spam 送信ホストの多くは SMTP セッションを途中で切断します 1. [[SMTP/envelope情報]]をきちんと受け取れたときは、[[SMTP/一時エラー]]を返事します。   [[SMTP/恒久的エラー]]ではありません。 1. [[SMTP/envelope情報]]を受け取れた相手のIPアドレスは「短期的受信リスト」に登録しておきます。  一定期間内の再接続を受入れるためです。 1. ある期間内に再接続してきたら受信します。 ただし、すぐに(5分以内)再接続してくるものは再度一時エラーを返します。 短期リストから削除します。 (qmail は 6 分半後に最初の再接続をしてきます。) 1. きちんと送られてきた helo と [[SMTP/envelope情報]] は記録しておきます。 あとで分析して、ホワイトリストなどに登録するための判断に使います。 1. mail from が "<>" のものは短期受信リストには登録しないことにしました。 こちらから送信していないメイルにエラーが返ることはないからです。 バウンス型の spam を排除することができます。 1. 短期受信リストは適宜クリアします。 一定時間内に再接続してこなかった場合は spam ホストだとみなします。