Saturday, July 21, 2012

プロキシの匿名性



モデル - インターネットにおける情報の交換は、 "サーバークライアント"によって行われます。クライアントが要求を送信します(何彼に必要なファイル)とサーバーが応答を(必要なファイル)を送信します。ブラウザ(名前とバージョンを含む)の設定等のバージョンとオペレーティングシステムの名前を、この情報が必要になることができます:クライアントとサーバーの間の密接な協力関係(完全に理解する)ために、クライアントは自分自身に関する追加情報を送信します。どのWebページがクライアントに(オープン)与えられるべきであるかを知るためにサーバー。ブラウザのさまざまな構成のためのWebページのさまざまな変種があります。しかし、長いウェブページは通常、ブラウザに依存しないように、それは、Webサーバーからこの情報を隠すために理にかなっています。

どのようなブラウザがWebサーバーに送信する。
オペレーティングシステムの名前とバージョン
ブラウザの名前とバージョン
ブラウザの設定(ディスプレイの解像度、色深度、Java / JavaScriptのサポート、...)
クライアントのIPアドレス
その他の情報

このような情報(およびWebサーバのために絶対に不必要)の最も重要な部分は、IPアドレスに関する情報です。あなたのIPを使用すると、それはあなたについて、次のことを知ることが可能です。
あなたからのある国
お使いのプロバイダ?の名前と電子メール
あなたの物理アドレス

クライアントからサーバーへ送信された情報は、環境変数としてサーバーに対して(アクセス)は入手可能です。すべての情報単位は、いくつかの変数の値です。すべての情報ユニットが送信されていない場合は、対応する変数は空になります(その値は不定になります)。

これらは、いくつかの環境変数は次のとおりです。

REMOTE_ADDR?クライアントのIPアドレス

HTTP_VIA?それが空でない場合は、プロキシが使用されます。 1つを使用する場合の値は、プロキシサーバーのアドレス(または複数のアドレス)であり、この変数は、プロキシサーバー自身によって追加されます。

HTTP_X_FORWARDED_FOR?それが空でない場合は、プロキシが使用されます。 1つを使用する場合の値がクライアント(IP)の実際のIPアドレスである場合、この変数は、プロキシサーバーによって追加されます。

HTTP_ACCEPT_LANGUAGE?どのような言語(ページに表示されるべき言語)がブラウザで使用されています

HTTP_USER_AGENT?ので、 "ユーザーですか?のエージェント"と呼ばれています。すべてのブラウザでは、これはMozillaです。また、ブラウザ?の名前とバージョン(例えばMSIE 5.5)とオペレーティングシステム(例えばWindows 98)もここに記載されています。

HTTP_HOST? Webサーバは何ですか?の名

これは、環境変数のほんの一部です。実際にはそれらの多くは(DOCUMENT_ROOT、HTTP_ACCEPT_ENCODING、HTTP_CACHE_CONTROL、HTTP_CONNECTION、SERVER_ADDR、SERVER_SOFTWARE、SERVER_PROTOCOL、...)があります。その量は、サーバーとクライアントの両方の設定に依存することができます。

これらの変数の値の例を次に示します。

REMOTE_ADDR = 194.85.1.1
HTTP_ACCEPT_LANGUAGE = RU
HTTP_USER_AGENT = Mozilla/4.0(互換; MSIE 5.0; Windows 98の場合)
HTTP_HOST = www.webserver.ru
HTTP_VIA = 194.85.1.1(Squid/2.4.STABLE7)
HTTP_X_FORWARDED_FOR = 194.115.5.5

インターネットの仕事で匿名性は、環境変数は、Webサーバーから "隠す"とは何によって決定されます。

プロキシサーバーを使用しない場合、環境変数は次のように見える。

REMOTE_ADDR =あなたのIP
HTTP_VIAが決定=しない
HTTP_X_FORWARDED_FORは=決まっていない

環境変数は、プロキシサーバーで "隠して"どのようによると、プロキシのいくつかの種類があります。
透過的なプロキシ

彼らはあなたのIPアドレスに関する情報を隠しません。

REMOTE_ADDR =プロキシのIP
HTTP_VIA =プロキシのIP
HTTP_X_FORWARDED_FOR =あなたのIP

そのようなプロキシサーバの機能は、インターネットでの匿名性の改善ではありません。彼らの目的は、複数のコンピュータのインターネットへの共同のアクセス情報キャッシング、組織などです。
匿名プロキシ

どのような方法でクライアント?のIPアドレスを隠すすべてのプロキシ·サーバーは、匿名プロキシと呼ばれてい

シンプルな匿名プロキシ

これらのプロキシサーバーがプロキシが使用されているという事実を隠していない、しかし、彼らは独自のを使用してIPアドレスに置き換えます。
REMOTE_ADDR =プロキシのIP
HTTP_VIA =プロキシのIP
HTTP_X_FORWARDED_FOR =プロキシのIP

これらのプロキシは、他の匿名のプロキシサーバーの間で最も広く普及しています。

歪曲プロキシ

同様にシンプルな匿名のプロキシサーバーは、これらのプロキシは、プロキシサーバーを使用しているという事実を隠していません。 ?しかし、クライアントのIPアドレス(あなたのIPアドレス)別の(任意のランダムな)IPに置き換えられます。

REMOTE_ADDR =プロキシのIP
HTTP_VIA =プロキシのIP
HTTP_X_FORWARDED_FOR =ランダムなIPアドレス
高い匿名プロキシ

これらのプロキシサーバはまた、 "高い匿名プロキシ"と呼ばれています。匿名プロキシサーバーの他のタイプとは対照的に、彼らは、プロキシを使用しての事実を隠す:

REMOTE_ADDR =プロキシのIP
HTTP_VIAが決定=しない
HTTP_X_FORWARDED_FORは=決まっていない

プロキシが1つの非常に重要なことを除いて、使用されていないかのように変数の値が同じであることを意味する?プロキシのIPは、IPアドレスの代わりに使用されます。
要約

目的に応じて透明性と匿名性のプロキシがあります。ただし、WebサーバからのみIPアドレスを隠すが、他の情報(ブラウザの設定について)アクセス可能なプロキシサーバを使用して、忘れないでください!