■ プロキシとは
プロキシ(Proxy)の本来の意味を英和辞典で引いてみると、「代理(権)、委任状、代理人、代用となるもの」(研究社 リーダース+プラス EPWING CD-ROM版)という言葉がでてきます。
一方、インターネットの世界におけるプロキシはというと、こちらも「代理」という言葉が一番近い意味合いになるかと思います。プロキシサーバーを経由することで、直接アクセスできないWebサイトにアクセスしたり、同じサーバーに複数のクライアントからアクセスするかわりに、まとめてアクセスしたりするといった機能を持つサーバーを、一般にプロキシと呼びます。
■ プロキシその1:アプリケーションファイアウォールとして
|
図1:直接接続の弊害 その1
|
例えば、プライベートネットワーク上のクライアントが、自由にグローバルネットワークのサーバーにアクセスできるというのは、逆を言えばインターネット上の悪意あるサイトから、簡単にクライアントへ侵入できてしまうということでもあります(図1)。
これを防ぐために、ファイアウォールを利用しましょうお話については第8回で紹介したとおりです。ところが、ファイアウォールを設置すると今度はプライベートネットワークからグローバルネットワークにアクセスする際も、しばしばファイアウォールが通信の障壁になってしまうケースがあります。
これを解決する方法の1つとして考えられたのが、アプリケーションファイアウォールとしてプロキシサーバーを使うことです。図2のように、プライベートネットワークとグローバルネットワークの上にファイアウォールを置き、ここでプロキシサーバーを動作させます。
ここでは、クライアントは目的のサーバーに直接アクセスするのではなく、プロキシサーバーに対して「目的のサーバーにアクセスしたい」とリクエストを出します。すると、プロキシサーバーはクライアントにかわって目的のサーバーにアクセスし、戻ってきた返答をクライアントに返すという働きをします。電話で言えば、相手と直接電話するのではなく、電話受け付け窓口をとおして話をするような形です。
もちろんこれには「もどかしい」という欠点があり、ネットワークにおいてもレスポンスは多少落ちます。そのかわり、悪意のあるWebサイトからの攻撃はプロキシサーバー(ファイアウォール)側で遮断されるので、被害が内側におよびません。先ほどの電話受け付けの例で言えば、いたずら電話がかかってきても窓口でこれを止められるようなものです。
|
図2:アプリケーションファイアウォールとしてのプロキシ
|
ちなみにプロキシサーバーの設定次第では、プライベートネットワークから特定のサーバーへのアクセスを遮断する方法や、特定のアプリケーションの利用を遮断することも可能になります。このため、例えば企業においては、仕事と無関係なWebサイトへのアクセスを遮断するというような使い方がされる場合もあります。
このあたりの柔軟性の高さが、アプリケーションファイアウォールとしてのプロキシサーバーの需要に繋がっているとも言えるでしょう。
■ プロキシその2:キャッシュサーバーとして
|
図3:直接接続の弊害 その2
|
もう1つのプロキシサーバーの用途は、キャッシュです。特にWebサーバーで利用されますが、例えば人気のあるWebサイトであれば、常に多くのユーザーがアクセスしにくることでしょう。
もちろん、新聞社系ニュースサイトのように常時更新されているのであれば仕方がない面もありますが、図3のように、同じLAN内から複数のクライアントが同時にアクセスしているケースでは、回線の使用に無駄が多かったりします。最近はアクセス回線の高速化もあり、それほど不都合は感じなくなりつつありますが、回線が細いところでは上記のようなケースを削減しないと無駄が多くなってしまいます。
こうした場合に利用されるのが、キャッシュサーバーとしてのプロキシです(図4)。ここでは、クライアントは直接目的のサーバーをアクセスするのではなく、いったんプロキシサーバーにアクセスします。すると、プロキシサーバーは「自分がそのデータのコピーを持っているか」を確認し、持っていなければ目的のサーバーからこれを取得してクライアントに返しますが、同時にそのデータのコピーを自分で保存しておきます。
こうすることで、2回目以降に同じサーバーへのアクセスがあれば、そのコピーを送り出すだけですむことになります。最初の1回を除けば、すべてLAN内に置かれたプロキシサーバーとクライアントの間だけでやり取りをするので、アクセス回線や目的のサーバーに余分な負荷をかけないというメリットがあります。
|
キャッシュサーバーとしてのプロキシ
|
この2つが、プロキシサーバーとしての一般的な使い方と言って良いでしょう。ちなみに真っ当ではない使い方として、自分のアクセス回線を隠すためにプロキシを通すという方法があります。こうした利用方法の大半は、Webサーバーにアクセスする場合の話で、直接目的のサーバーに接続するのではなく、プロキシを経由することで目的のサーバー側から自分のクライアントが使用しているIPアドレスが、直接見えなくなるというのがその理屈です。
しかし、実際にはプロキシと目的のサーバーが交信する中で、クライアントのIPアドレスが通知されるケースもあるほか、基本的にプロキシはアクセスログを取れるようになっているので、その気になれば最終的にクライアントが使っているIPアドレスを割り出すことも不可能ではありません。
これを回避するため、複数のプロキシサーバーを経由させるというケースもありますが、基本的には単なる時間稼ぎです。国外にはログを取らない匿名プロキシサーバーも少なからず存在していますが、いろいろ悪用されるケースが多いため、その数は減少傾向にあります。プロキシを通すことで、匿名性を確保できるとは思わない方が賢明でしょう。
|
びび(右):
ブロードバンド用語を習得すべく、日々学習中の小学生。何とか自力 で学ぼうとはしているが、結局はワーズに助け船をだしてもらっている。
ワーズ(左):
言葉がキツくなるときもあるが、基本的には面倒見の良いお姉さんタイプ。びびとは家も近いこともあり、昔から何かと世話を焼いている。びびからは「ワーズさん」と呼ばれ、慕われている。 |
2004/11/08 10:57
槻ノ木 隆 国内某メーカーのネットワーク関係「エンジニア」から「元エンジニア」に限りなく近いところに流れてきてしまった。ここ2年ほどは、企画とか教育、営業に近いことばかりやっており、まもなく肩書きは「退役エンジニア」になると思われる。(イラスト:Mikebow) |
|