スクリプトのCGIに組み込むことにより、このCGIへの特定の相手からのアクセスを制限します。初版(Ver.0.92)は、1998年6月のリリースなので、バグ取りを除いて約2年半ぶりのバージョンアップとなります。初版は、プロキシサーバーを利用した当面の荒らし行為を防止したい、ということでとりあえず作成したものであるため、多くの問題を残しながら、そのまま放置していました(苦笑)今回の新版は、これらの問題を解消すると共に、プロキシサーバー経由の場合に限らず、ホスト名なども含む種々のアクセス制限を行えるようにし、設置方法やWeb上での操作性も改善しました。これに伴い、名称も「プロキシ制限ライブラリ」から「LQアクセス制限ライブラリ」に変更しました。概要このライブラリが提供するアクセス制限の概要を以下に説明します。(ユーティリティCGIに付属のヘルプファイルも参照してみて下さい。)なお、これらのアクセス制限は、いずれもWeb上の操作により、簡単に登録/削除、設定/解除を行うことができます。プロバイダからのアクセスを、特定の地域のアクセスポイントに限定してアクセス禁止するために用います。禁止IPアドレス主に、下記の「プロキシサーバー制限」や「ドメインの国制限」では制限し切れないプロキシサーバー経由のアクセスを禁止するために用います。禁止範囲内のIPアドレス特定のドメインの連続するIPアドレスをまとめてアクセス禁止にします。禁止ホスト名(正規表現)禁止ホスト名の正規表現版です。許可IPアドレス主に、下記の「プロキシサーバー制限」によりアクセスを禁止された会社や学校などのプロキシサーバー経由のアクセスを許可するために用います。ユーザーIDに基づいたアクセス制限ユーザーIDは、クッキーによってアクセスの相手(のブラウザ)に設定します。許可ユーザーID本来他のアクセス制限に引っ掛かるおそれのある無関係の人のアクセスを許可するために用います。禁止ユーザーIDクッキーによって設定したユーザーIDを用いて、特定の相手のアクセスを禁止します。METHODによるアクセスを一律に禁止します。禁止ユーザーIDと併用することにより、確実に特定の相手のアクセスを禁止します。プロキシサーバー関連のアクセス制限プロキシサーバー制限CGIの環境変数を検査してプロキシサーバーからと判断したアクセスを一律に禁止します。ドメインの国制限ホスト名を検査して、日本(および米国)以外からのアクセスを禁止します。海外にある公開プロキシサーバーからのアクセスを禁止するために用います。同一IPアドレスからの所定時間内の連続POSTを禁止します。外部POSTの禁止これは、CGIが対応していない場合のためのもので、おまけです。CGIとして、KENTさんの「プチ☆ボード」を利用させて頂きました。...LQアクセス制限ライブラリを組み込んだ掲示板CGIまずは、こちらの掲示板CGIを参照して、LQアクセス制限ライブラリがあなたのアクセスログを記録するようにして下さい。掲示板CGIがいきなりアクセス禁止になる場合には、この設定ファイルの初期化をクリックしてから、再度アクセスし直して下さい。...LQアクセス制限ライブラリのユーティリティCGI掲示板CGIを参照したら、このユーティリティCGIであなたのアクセスログを参照して下さい。実際にアクセス制限が有効かどうかを上の掲示板CGIにアクセスしてみることで確認することができます。実際にアクセスは禁止されません。設定ファイルの初期化を実行すると、この「アクセス制限の実行」も「制限しない」に戻ります。Software)として扱って下さい。作者に無断で、以下の行為を無償で自由に行うことができます。LQアクセス制限ライブラリをCGIに組み込んで使用する行為LQアクセス制限ライブラリを修正または改造する行為、および、この修正/改造版を使用する行為LQアクセス制限ライブラリのオリジナル版や修正/改造版の全部または一部を配布する行為(記録媒体に保存して配布するほか、インターネット上などで配布する場合も含む)上記行為は、営利目的によるものの場合にも制限されません。サブルーチンなどのスクリプトの一部についても同様に扱って下さい。オリジナル版を再配布する場合や修正/改造版を配布する際に、オリジナル版の作者や出所URLを表示されることは歓迎します。このLQアクセス制限ライブラリをCGIに組み込んで使用するだけの場合には、その性格上秘密にしておいた方がよいことが多いので、少なくともこれを組み込んだCGIの出力には、作者表示や出所URLの表示などは行わないで下さい。作者は、LQアクセス制限ライブラリを使用した結果について、perlスクリプトの実行結果を含め、一切の責任を負いません。作者に連絡する必要がある場合には、mmにお願いします。通常のCGIの設置は経験のある方の利用を対象にしているので、基本的なCGIの設置方法などに関する質問には応じかねます。作者が多忙な場合や、内容的に対応不要と判断したメールには返信致しませんので、この点も予めご了承下さい。LQアクセス制限ライブラリのダウンロードLQアクセス制限ライブラリは、ファイル名が固定されていると、CGIに組み込んだことが他人にバレたり、また、設置環境によっては、他人にアクセスログファイルを覗かれたりするおそれがあります。そこで、このLQアクセス制限ライブラリは、ダウンロードする人ごとに異なるファイル名で使用して頂くようにしています。このファイル名は、各ファイルとも拡張子(ファイル名のピリオド以降)を除くボディ部を共通にします。部分を他の英小文字の6文字に変更したものです。ここでダウンロード時に生成されるファイル名とユーザーIDの鍵と塩は、必ず他人に知られないようにして下さい。下の「lqxxxxxx.pl」のリンクから、ダウンロード用のCGIを用いてファイルをダウンロードして下さい。いう名前で保存されるので、ボディ部と共に拡張子も変更して下さいここでは、リンク先を直接ディスクに保存するようにして下さい(ブラウザで開いたものを保存すると、不要なタグが付加される場合があります)。Windowsでは、リンクを右クリックして、「対象をファイルに保存」などを選択します。次に、ダウンロードによってあなたのパソコンのハードディスクに保存したファイルをテキストエディタ(Windowsなら例えば「メモ帳」)で開いて下さい。すると、冒頭に以下のような説明が現れるので、ここでの指示に従って、以降に説明するようにダウンロードファイルの名前を変更すると共に、指示された名前でファイルを新規作成します。★このファイルの内容は、通常の使用では、特に変更をする必要はありません。★このライブラリのファイル名は、ダウンロードのたびにランダムに変更されます。通常は、ここで指定するファイル名をそのまま使用して下さい。・ダウンロードしたファイルの名前を以下のように変更して下さい。・下記の名前の0バイトファイルを作成して下さい。いう2文字を除けば、ダウンロードのたびに変化します。なる)の名前をlqijfbzk.plに変更します。次項でダウンロードしたファイルの名前も、同様に変更して下さい。その他、設置に必要なファイル下のファイルをダウンロードして、上記で指定されたファイル名に変更して下さい。いう拡張子で保存された場合には、ボディ部と共に拡張子も変更して下さい(ただし、このファイルがなくても動作には影響しません)ここでも、リンク先を直接ディスクに保存するようにして下さい(ブラウザで開いたものを保存すると、不要なタグが付加される場合があります)。Windowsでは、リンクを右クリックして、「対象をファイルに保存」などを選択します。パス以外は、特に変更する必要はありません。上の例の場合には、新たにダウンロードした2つのファイルの名前を、それぞれlqijfbzk.cgilqijfbzk.htmlに変更します。下のデータファイルを指定の名前で新規作成(0バイトファイル)して下さい。部分を指定通りに変えたものを作成します上の例の場合には、次の5つのファイルを作成します。上記でダウンロードしたファイルと新規作成したファイルを、LQアクセス制限ライブラリを組み込むCGIと同じディレクトリに転送してパーミッションを設定します。以下に、ファイルとパーミッションの一覧を示します。部分は、指定に従って変更したものになります。パーミッションの欄の括弧内は、CGIが所有者権限で動作する場合の設定を示します。)を最初に呼び出した時に、「所有者権限で実行されます。」と表示された場合には、CGIが所有者権限で動作することになります。「普通の権限で実行されます。」と表示された場合には、所有者権限ではありません。所有者権限についてよく分からない場合には、とりあえず括弧の左側の普通の権限の場合のパーミッションに設定しておき、ユーティリティCGIの最初の起動時に、画面の指示に従って下さい。OK」のステータスコードを返す場合に設定するHTMLファイルの例です。ある必要はありません)やメッセージ内容、埋め込んだメールアドレスなどを適当に書き変えて自由に利用して頂いて結構です。適当なパスを設定してみて下さい。始まるURLを指定することができます。ファイル名が他人に知られないようにしなければなりません。このため、あなたのホームページのWebサーバーがディレクトリのファイル一覧を表示するように設定されている場合には、必ずLQアクセス制限ライブラリを設置するディレクトリにデフォルトファイルを置いておいて下さい。ファイル名が見える場合には、デフォルトファイルを置く必要があります。(内容は何でもよい)であることが多いのですが、Webサーバーの設定によっては異なる場合もあるので、この場合には、設置サイトの解説などを参照するか、サーバーの管理人に問い合わせて下さい。)にアクセスしてみて下さい。ユーティリティCGIは、最初の起動時に設置ファイルの簡単な検査を行います。この検査で致命的な問題が発生した場合には、処理がそこで中断されるので、まずその修正を行って下さい。ここでのパーミッションの検査は、UNIX環境を想定しているので、それ以外の環境では無視して下さい。)は、存在しなくても、LQアクセス制限ライブラリの動作には全く影響ありません。検査で致命的な問題がなければ、ページの下の方にパスワードの入力欄が現れます。ここで任意のパスワードを入力して設定ボタンをクリックすれば、パスワードが設定されます。「MD5のみの環境の場合の修正」を参照して、スクリプトの修正をして下さい。これで、ユーティリティCGIの設定は完了です。CGIファイルへの組み込みがまだの場合には、アクセスログが記録されないので、アクセスログページにはアクセスログは表示されません。暗号化にDESが使えずMD5のみしか使えない環境では、そのままでは、ユーティリティCGIでパスワードの設定ができません。2つのファイルを以下のように修正して下さい。削除して以下のようにして下さい。1文字削除して下さい。削除して以下のようにして下さい。1文字削除して下さい。CGIファイルへの組み込みLQアクセス制限ライブラリのCGIへの組み込みは簡単です。perlスクリプトの第2行目に以下の1行を挿入します。部分は、指定のものに変えて下さい。perlスクリプトの冒頭部分は、下のようになっています。http://www.kent-web.com/LQアクセス制限ライブラリのダウンロードで示した例の場合であれば、これを、下のように変更します。)のアクセスログページにそのアクセスログが表示されれば、設置は完了です。)の設定変更ページで「ユーザーIDを送るクッキーの名前の設定」を行う必要があります。)の該当個所を表示するので、具体的な使用方法は、そちらを参照して下さい。