############################################# Proxomitron Version Naoko-4.5 (C) 1999-2003 Scott R. Lemmon ############################################# 日本語訳:count_b NAOKO-4.5 の更新点: Naoko 4.4 以降の更新点については、Changes.txt を参照してください。 新規ユーザーのみなさんへ: もしあなたが初めて Proxomitron を使うのであれば、まずヘルプファイルの "Installation and Eradication" の項を読んでください。ブラウザで Proxomitron を効かせるためには、そこに記述されている手順を踏む必要があります。 ライセンス: (訳注:ライセンスについては必ず原文を参照してください。これは参考訳に過ぎません) Proxomitron is copyrighted 1999-2003 by Scott R. Lemmon Proxomitron は「少年ウェア」であり、個人の利用に関してはフリーです。あなたは このプログラムを、いつまででも、何回でも使用することができます。どんなに長い 間使用しても、全く制限されません。実を言えば、永久に使い続けることができます。 それからもちろん、一定の条件を満たすならば、このプログラムを自由にコピーする ことができます (詳細については license.html ファイルを参照してください)。 ** Proxomitron は自己の責任でご使用ください! ** 私は Proxomitron が安全で役に立つプログラムだと信じていますが、これが適切に動 くかどうか、思いもよらないバグがダメージを与えてしまったりしないか、あなたのシ ステムを危険にさらしたりしないか、もしかしたらゴジラを起こしてしまったりするの ではないか、などといったことについては、いかなる保証もできません。 このソフトウェアは「現在あるがまま」の形で提供されるのであって、説明された、 もしくは言外に含まれた、または法令による、いかなる保証も条件もありません。この ソフトウェアを使用することによって生じたいかなる損害も、作者はその責を負わない ものとします。これらの条件に同意する場合にだけこのソフトウェアを使用してくだ さい! 再配布について: 私はこのプログラムに関するすべての権利を保持しますが、以下の条件を満たす限り、 自由に再配布することができます...  1. 配布にかかるメディアや輸送等の実費( $5.00 US を越えてはなりません)を    除いて無償であること。  2. このプログラムと関連するファイルは、オリジナルのアーカイブを保持している    ものであって、いかなる変更もされていないこと。  3. 他の商業製品の一部として含まれるのではないこと。  4. 配布の過程において、いかなるバイソンも傷つけないこと。^_^ この製品は、アクセスやダウンロードが無償でできる限りにおいて、電子的手段でダ ウンロード可能なあらゆるソフトウェアコレクションに含めても構いません(ウェブ サイト、FTPサイト、およびBBS(掲示板)を含みます)。 この製品を商用の製品に含める場合、あるいは CD-ROM や他の営利目的のメディアに 収録する場合は、事前に許可が必要です。以下の email アドレスを使用して私に連絡 してください: slemmon@proxomitron.cjb.net ## SSL のサポート ## Proxomitron は SSL (secure https) 接続をサポートするようになりました。これは 2つのことから成り立っています。すなわち、SSLeay モードと pass-thru モードです。 "settings" ダイアログの下にある HTTP オプションでどちらをデフォルトにするか コントロールします。 SSLeay/OpenSSL mode ------------------- このモードでは Proxomitron は入ってくるデータを復号、フィルタリングし、送り 出す前に再び暗号化します。これは https 接続において、ほぼ透過的なフィルタリ ングと、すべてのアクセスコントロールを可能にします。これはオープンソースで 提供されている、優れた SSLeay/OpenSSL ライブラリのおかげで実現されました。 (同梱してはいません ── 以下を参照のこと) ** 注意 ** このモードは実験的なものです。オンラインバンキングやショッピングなどの重要な 接続では、SSL フィルタリングは使用しないことを強くおすすめします。接続の安全 度が低下する可能性がありますし、そのようなページではフィルタリングが問題を引 き起こすことにもなりかねません。しかしながら、さほど重要でもないページが何気 に SSL を使用している、というケースも増えてきましたから、そのようなページを フィルタしたいこともあるでしょう。その場合でも、あなた自身の責任で行うという ことに留意してください。 このモードを使用するためには、Proxomitron は、全ての SSL ライブラリと全ての 暗号ルーチンを含む "ssleay32.dll" と "libeay32.dll" にアクセスできなければな りません。それ以外の場合、 "Pass-Thru" モードになります。 アメリカにおいて、暗号を使用するプログラムにつきまとう法的な、あるいは特許の 問題があるため、Proxomitron には *いかなる暗号化コードも含まれていません*。 SSL 接続をフィルタリングするためには2つの追加ファイル ── "ssleay32.dll" と "libeay32.dll" ── を手に入れる必要があります。これらのファイルは SSLeay/OpenSSL ライブラリの一部であり、SSL 暗号化/復号化に必要な全てのルーチ ンが含まれています。きちんと動くためには、これらが比較的新しいバージョンであ り(これは最近アップデートされました)、https に必要な全てのアルゴリズムを含 んでコンパイルされている必要があります。かなり面倒なことはわかりますが、私が 知る限り、これが安全に SSL サポートを提供するための唯一の方法なのです。以下は、 これを書いている時点で互換性のある DLL ファイルを見つけることができた場所です。 Shining Light Productions はウィンドウズ用にコンパイルされた Open SSL を提供 してくれています。他の Win32 用 OpenSSL コンパイルでも動くかもしれません。 http://www.shininglightpro.com/index.php?treeloc=35 Off-By-One ブラウザにも、zip ファイル中にこれらの DLL ファイルがあるようです。 (またこちらはダウンロードするサイズが小さく、1メガ以下です)。 http://homepagesw.com/images/OffByOne.zip NOTE: もしどなたかこれらのファイルを合法的に置くことができて、    ミラーしてもよいという場合はぜひ教えてください。 OpenSSL は OpenSSL Toolkit で使用するために OpenSSL Project によって開発された ものです。 (http://www.OpenSSL.org/) これは Eric Young (eay@cryptsoft.com) に よって書かれた暗号化ソフトウェアを含んでいます。また Tim Hudson (tjh@cryptsoft.com) によって書かれたソフトウェアを含んでいます。 (openssl.txt に完全なライセンスがありますのでご覧ください) サーバの証明等について ---------------------- SSL フィルタリングにはさらに別の制限があります。 Proxomitron が SSL サーバと して働くためには、「証明書」を持つ必要があります。証明書はウェブサーバが使う もので、あなたのウェブブラウザに対して自己を証明するのに使用されます。これは VeriSign のようなよく知られている会社によって、デジタル的に「署名」されてい る必要があります。さもなければ、ブラウザは警告を出すでしょう。 Proxomitron の証明書は "proxcert.pem" ファイルにあります。これは SSLeay を 使って作成された自己署名の証明書です(もしあなたが SSLeay に詳しければ、自分 で証明書を作成することができます)。そのため、これは安全であるとは見なされま せん。けれども、これは Proxomitron とあなたのウェブブラウザの間の接続にのみ 使われるものです。Proxomitron とリモートサイトとの接続は、Proxomitron の証明書 ではなく、リモートサイトの証明書を使用して行なわれます。通常は、あなたのウェブ ブラウザへのローカルな接続は、あなたの PC の外にはまず出ていかないので、その 安全性は問題にはなりません。実際、これを暗号化する唯一の理由は、あなたのブラウ ザに、安全なサイトに直接接続していると思わせる、というだけなのです。 しかし、これには少々障害があります。最初に Proxomitron でフィルタしながらセ キュアサイトにアクセスする際、通常あなたのブラウザは警告を発します。これには 2つの理由があります。第一に、最初は Proxomitron の証明書はブラウザには認識 されません(しかし通常は、それに追加することができるでしょう)。第二に、 Proxomitron の証明書は、あなたが訪れているサイトの名前と一致しません(それを 事前に知る方法は無いからです)。 不運にも(あるいはたぶん幸運なことに)これらの警告を避けることはできません。 SSL はデータを秘密に傍受する手段を防ぐようにデザインされているからです。 Proxomitron はあなたのデータを傍受しますが、それはあなたのコントロール下に おいてのことです。 これに関して、"half-SSL" ともいうべきあるテクニックがあります。Proxomitron では、実際のウェブサーバに対しては SSL で接続したい URL に対して、セキュア ではない "http://" URL を指定することができます。そのためには、単に URL を こんな感じに書き換えます。 元のURL : https://some.secure.site.com/ 書き換え後 : http://https..some.secure.site.com/ プロトコルを "http://" にし、それから "https.." をホストネームの最初に付け加え ます。これであなたのブラウザと Proxomitron との接続は暗号化されなくなります。 Proxomitron と最終的なサーバとの接続は暗号化されているにもかかわらずです!  Proxomitron とのローカルな接続は、普通はあなたの PC 内に限定されているので、 これは安全性を低下させることにはなりません。けれどもブラウザは、自分が通常の セキュアではない接続をしていると思っているので、証明書のチェックを行ないません。 このことは、https をサポートしていないブラウザでセキュアページにアクセスする ためにも使用することができます。 NEW: Proxomitron はリモートサーバの証明書が正しいかどうか、自分でチェックできる ようになりました。これは Proxomitron をインストールしたフォルダにある "certs.pem" ファイルを探しに行きます。このファイルには、信頼された証明機関の リストが OpenSSL を使用して PEM フォーマットで書かれているはずです。 Proxomitron は SSL サイトの証明書に問題があるか、ファイルに記載された信頼された 証明機関のリストにマッチしなかった場合には、自前で証明書の警告を表示します。 デフォルトでは、一般的な証明機関 (VeriSign、Thawteなど)が記載されています。 さらに完全なリストは、IE が使用しているデータベースから抽出することができます。 OpenSSL を使用して、それを OpenSSL が使用する PEM フォーマットに変換することが できます。 まず、変換するためにこれを抽出します... * コントロールパネルから...  インターネットオプション -> コンテンツ -> 証明書 * 「信頼されたルート証明機関」タブを選びます * 「詳細設定」を選びます * 「サーバー認証」*のみ*をチェックします * 「エクスポート形式」を PKCS #7 にします * OK を押して証明書タブに戻ります * 一番上の「目的」をドロップダウンメニューから「高度な目的」にします * リストボックス中のすべての発行先を選択して「エクスポート」をクリックします * 指示に従って、証明書を保存します それから、PEM に変換します... * 次に、OpenSSL を以下のコマンドラインで起動し、祈ります... openssl pkcs7 -inform DER -outform PEM -in ie-export-filename.p7b -out certs.pem -print_certs (注意:上記はすべて1行です。改行は無視してください) これで、OpenSSL 互換の IE 証明書リストを手に入れました! 証明書は単に、あなたが接続していると思っているサイトに実際に接続していて、 「なりすまし」のサイトには接続していない、ということを保証するために使用されて いることを頭に入れておいてください。彼らが実際にこれをやっているかどうかは議論 の余地があるところです。多くのサイトが(なかでも特に小さなものが)、正しくは 「署名」されていない証明書を使用していますが、これはそのサイトへの接続が暗号化 されていないということを意味しているわけではありません。実際のところ、これは 彼らが VeriSign の公式な認可を受けるために必要なお金を支払わなかった、という ことを意味しているに過ぎません。同様に、正しい署名があるからといって、その サイトがあなたを食い物にしないという保証はありません。大切なデータを送る際に は、そのサイトが信用に足るのかどうか、注意深く判断してください。 また、先にも述べたとおり、安全性が重要な場合には pass-thru モード(以下を 参照のこと)で接続した方がよいでしょう。 Pass-Thru モード ---------------- これは多くの他の proxy によってサポートされているのと同様のものです。このモード では SSL データはどのような変更もされずに、サーバに渡されます。データが復号化 されることはありませんので、このモードには特別な暗号技術のサポートは必要ありま せん。けれども、このモードにはプロクシの切りかえができるという以外には特に利点 があるわけでもありません。Proxomitron はバイパスされたとき、および "Use SSLeay" モードが有効になっていない場合(あるいは SSLeay dll ファイルが存在しない場合) には常に pass-thru モードになります。これはセキュリティの点からはもっとも安全 なモードであり、Proxomitron のデフォルトでもあります。 ## Proxy 関連 ## CGI PROXY SUPPORT: ------------------ URL の前につけて使うタイプの proxy が、Proxomitron で使用できるようになりまし た。普通の proxy と同様に、URL を proxy セレクタに加えてください(ただし http:// の部分は必要ありません)。唯一の制限は、目的の URL を終わりに付け加え れば proxy が動くようにしなければなりません。たとえば、もし proxy が... http://somehost.com/cgi-bin/proxy.cgi/ そしてあなたが以下のサイトに接続したい場合... http://anotherhost.com/some/webpage.html Proxomitron は自動的に以下のように並べます... somehost.com/cgi-bin/proxy.cgi/http://anotherhost.com/some/webpage.html DeleGate スタイルの proxy は以下のようになっているでしょうから... www.delegate.com:8080/-_- このようになります... www.delegate.com:8080/-_-http://anotherhost.com/some/webpage.html ウェブブラウザの場合と同様に、組み合わせて記述すれば複数の CGI proxy を つなげて使用することができます... somehost.com/cgi-bin/proxy.cgi/http://www.delegate.com:8080/-_-http://anotherhost.com/some/webpage.html CHAINING REGULAR A PROXY TO CGI PROXIES: ---------------------------------------- CGI proxy に加えて、通常の proxy をリストの最初にもってくることでチェーン接続 することもできます。これは CGI proxy を使いながらブラウザで通常の proxy を使用 するのと同じことになります。このための構文は '->' を使用します。たとえば... www.aproxy.com:8080->somehost.com/cgi-bin/proxy.cgi/ +++++++++++++++++++ さて、今のところはこれで終わりです。新機能の詳細については、HTML ヘルプファイル をチェックしてみてください。 -Scott-