最終更新日: 2007年4月29日
文責: 柳澤 佳里
日本語 English
url.rbl.jpを使い、迷惑メールを排除するスクリプト: check_uri.pl
check_uri.plはRBL.JPのurl.rbl.jpを利用し、
迷惑メールを見付けるソフトである。
多くの迷惑メールには出会い系サイトの勧誘やフィッシングサイトの誘導など、
ホームページへのリンクをもつものが多い。
uri.rbl.jpはこのようなホームページのドメイン名をブラックリストとして
登録したもので、これを参照する事で出会い系サイトやフィッシングサイトへの
リンクを持つ迷惑メールかどうかを調べる事が出来る。
ダウンロード
使い方
設定の前に
ダウンロードしたファイルはtarでまとめて圧縮してあり、これを
伸長する必要がある。伸長するとcheck_uri.pl及び日本語、英語版の
READMEファイルが得られる。手順は次のように行う。
% gunzip -c check_uri-20070429.tar.gz | tar xf -
設定
READMEファイルにも書いてあるが、check_uri.plは内部で
perl(1)コマンドを使っている。
使う前にこのプログラムがある場所を設定する必要がある。
また、Unix上でこのプログラムを使う前にcheck_uri.plに実行権限を
与える必要がある。
まず、perlのある場所を設定する。
perlは大抵/usr/bin/か/usr/local/bin/にある。
例えば/usr/local/bin/perlにあった場合はcheck_uri.plの最初の行を次のように
書き換える。
#!/usr/local/bin/perl
#-
# Copyright (C) 2005-2007 Yoshisato YANAGISAWA. All rights reserved.
#
Windowsで作業する場合はperlの後ろにCR(キャリッジリターン)文字が入らないように
注意する必要がある。CR文字が入るとcommand not foundなどのエラーが発生する。
(このファイルをそのまま開いて普通に作業している分には問題が起きないと
思うが)
check_uri.plはダウンロードした状態では実行権限が無いためフィルターとして
実行するには不便である。そこで、check_uri.plに実行権限を与える。
実行権限の与え方は次の通りである。
% chmod +x check_uri.pl
利用手順
フィルターとしてメールを流し込むとX-URIRBLというヘッダーが自動で付く。
そして、迷惑メールと判断された場合には次のようなヘッダが付く。
X-URIRBL: Yes, test=check_uri.pl, registered=判断したURI, uribl=利用したURIBL, version=バージョン
なお、迷惑メールでないと判断した場合は次のようなヘッダが付く。
X-URIRBL: No, test=check_uri.pl, version=バージョン
そして、maildropなどの振り分けソフトでこのヘッダ(X-URIRBL)を
元に迷惑メールとして振り分けを行うことができる。
check_uri.plは標準入力(stdin)を読んで、標準出力(stdout)に結果を
表示するので、コマンドラインでは次のように実行できる。
% ./check_uri.pl < メールファイル > mail.with_header
maildropおよびprocmailから利用する設定についてはダウンロードしたファイルの
中のREADME(.jp)に示してあるので、そちらを参照されたし。
ライセンス
ライセンスはソースコード中に明記してある通り、改訂BSDライセンスとしてある。
著作権表示義務、無保証。
でも、このソフト及びその派生物を使っている人が居たら教えてもらえるとうれしい。
対象環境
本ソフトウェアの開発環境はかつてはFreeBSD 5.4R上で現在はFreeBSD 6.2Rであるが、
perl 5.8系が使える環境ならどこでも使える(はず)。
なお、Perl 5.8系と制限しているのは内部でMIME::Base64などを用いているためで、
これらのモジュールを自分で導入した場合にはPerl 5.0系列でも使用できると
思われる。
更新履歴
- 2005年6月7日 このページを作成
- 2005年6月8日 host(1)を呼び出す実装を止め、Perlのgethostbynameを使用
- 2005年6月8日 リファクタリングにより、main部分を軽量化
- 2005年6月8日 デフォルトのPerlのパスを変更
- 2005年6月9日
Simon McCorkindaleさんによる英訳版が登場
Thanks for his contribution.
- 2005年6月17日 実行権限の付加について言及
- 2005年6月23日 本文がBase64エンコードされたメールをサポート
- 2005年6月27日 正常に書かれたマルチパートメッセージをサポート
- 2005年7月4日 From, Reply-To, Return-Pathをサポート
- 2005年7月11日 httpが付いておらずwwwで始まるURIを補足可能にした
- 2005年7月14日
.comで終わるURIを補足可能にし、dyndns.rbl.jpの利用を停止した
- 2005年8月1日 伸長時にディレクトリを作るよう配布ファイルを変更
- 2005年8月11日 http://www.hart.co.jp/spam/sa304fix.htmlを参考に
escape sequenceに対応
- 2005年9月2日 URIの収集箇所のリファクタリング, 本文のE-mailアドレスの
ドメインに対応
- 2005年9月18日 URI収集ルールの整理, 表示メッセージの変更
- 2005年10月9日 URIを見過ごすバグの修正、URI収集ルールの整理
- 2005年10月11日 エンコードされたメールの最終行にあるURIを見過ごす
バグの修正
- 2005年10月16日 From, Reply-Toにあるメールアドレスを見過ごすバグの修正
- 2005年10月19日 柴田さん
より頂いた下記機能を付加するpatchを適応 Thanks for his contribution.
- MIMEライブラリをインストールしたPerl 5.0に対応
- 終了ステータスにてRBLの登録、無登録を通知(-sオプションで有効)
- 2006年1月18日 このページのちょっとした日本語のミスを直す
- 2006年2月5日 メモリー使用量削減と高速化のための修正を実施
- メモリー使用量削減のため一時ファイルを利用するよう変更
- Content-Typeがaudio/*, video/*などになっている箇所を飛ばすよう変更
- 2006年2月7日 利用するURIRBLとしてmulti.surbl.orgを追加
- 2006年2月18日
- URIBLの返り値の利用する番号を指定できるように変更
- multi.uribl.comのAが2の時をURIBLとして追加
- multi.surbl.orgのAレコードが4の場合の値を利用しないように変更
- 2006年4月19日 エンコードされた本文のデコードをまじめにやるように変更
- 2006年4月24日 調査するドメインの抽出コードのバグを修正
- 2006年7月8日 3rd level domainについても調査するよう簡単に変更
- 2006年8月21日
- URLエンコードされたURLを持つ迷惑メールに対応
- multi.surbl.orgのAレコードが16の時を利用しないように変更
- 2006年10月9日 URLのマッチング精度を向上
- 2007年2月18日 notop.rbl.jpの記述例を追加
- 2007年4月29日 一部の迷惑メール送信者による壊れたMIMEメッセージに対応
Copyright
>
ご意見、ご要望は上記メールアドレスへ。