2008年08月31日

プロキシ・サーバーて?(proxyサーバー)

プロバイダーの「ホームページウイルスチェックサービス」を申しこんでから、仕組みが今ひとつ理解できず調べてみました。

プラバイダーからの説明は
DNSサーバではなく、専用のプロキシサーバ経由でウィルスチェックを行います。
アクセス先がパソコン内(localhost)や plalaのドメインなどウィルスチェックが不要な特定のアクセス先を予め除外し、それ以外の不特定多数のすべてに対してはプロキシサーバ経由でウィルスチェックするようになっております(ブラウザに設定するURLのスクリプトによりこれを判断します)
※ブラウザ----弊社プロキシサーバ----アクセス先Webサーバ という通信のながれになります

proxyを英辞朗で引くと、任状、代用となるもの、代理、代理権、代理人と記載されています。
プロキシ(proxy)とは「代理」という意味の英単語です。

ブラウザにプロバイダー指定のプロキシ・サーバーのURLのスクリプトを、アドレスに登録しました。

Webブラウザは、通常DNSサーバーからIPアドレスを受け取り直接Webサイトにアクセスしていたのを、このサイトを見たいとの要求をプロキシ・サーバーへ送るようになります。

これを受信したプロキシ・サーバーはアクセス要求を作り直して目的のWebサーバーにアクセスします。WebサーバーからWebページのデータを取得すると、Webブラウザに返します。Webブラウザが直接Webサーバーとやりとりするのではなく、プロキシ・サーバーが代理でやり取りをしてくれます。

プロキシ・サーバーのファイアウォールは、特定の条件に応じてWebサイトやWebページのアクセスをブロックします。管理者によって制御されネットワークやユーザーのコンピュータに害を及ぼす可能性のあるWebサイトやコンテンツへのアクセスを遮断、フィルタします。ということで、ウイルスの仕組まれたサイトをプロキシ・サーバーでチェックしてくれているようです。

また、プロキシサーバーを経由することで、自分のパソコンのIPアドレスが相手に知られなくなります。自分のパソコンのIPアドレスがわからないのですから、相手からウイルスを送られることもなく、パソコンからデータを盗まれることもないはず。

調べてみて、理解が出来たわけではないですが、プロキシ・サーバーにも種類があり、役割もサーバーによってことなるようです。

【プロキシ・サーバーの役割】

1.IPアドレスが漏れることを防ぐ。外部からパソコンを隠す。

ブラウザを使って、サイトをみる場合、DNSサーバー(ドメインネームシステムサーバー)にIPアドレスを受け取りにいき、そのIPアドレス先(Webサーバー)に、データ(Webページのデータ)を自分のパソコン(自分のパソコンのIPアドレス)へ送ってくださいと依頼して、送ってもらってそのサイトのデータをみています。

IPアドレスがなければデータの送り先が分かりません。相手には、このIPアドレスにデーターを送ってくださいと知らせなければいけません。

今、そのIPアドレスが知られることでその情報を悪用される場合があります。
自分のIPアドレスを知られるとそれだけインターネットを介した様々な攻撃を受ける危険にさらされるされることになります。サービス拒否(DoS)攻撃を受けたり、自分のコンピュータを遠隔操作されたりする危険性もあります。特に常時接続をしているユーザにとってはIPアドレスが知られることは問題です。

DNSサーバー(ドメインネームシステムサーバー)にIPアドレスを問合せ、直接相手のサイトへ行くのではなく、プロキシ・サーバー経由で相手のサイト(Webサーバー)にいく場合、相手のサイト(Webサーバー)へはプロキシ・サーバーのIPアドレスが伝わり、サイトのデータはプロキシ・サーバに送られてきてプロキシ・サーバーが代理でうけとってくれます。そのため相手には、自分のIPアドレスが伝わりません?

匿名性もプロキシ・サーバーのよって違うようです。非匿名のプロキシ・サーバーは少ないようです。
人気ブログランキングから自分のfc2のブログへ自分のパソコンからのアクセス解析をみると、IPアドレスはプロキシ・サーバーのものになっています。アクセスも日本からまではわかりますが、都道府県までは把握できていません。
それでも、OS・ブラウザ・ディスプレイ情報は表示されています。自分のパソコンの情報が相手サイトに伝わっているということです。

2.キャッシュ機能によりやり取りされたデータが保管される。パフォーマンスが向上。

これもプロキシ・サーバーのキャッシュが有効利用される環境や大容量の通信回線が必要です。又、利用者数に対して接続されているバックボーンが細いと逆に通信速度は遅くなるようです。

プロキシサーバーは一度代理でWebサーバーから受け取ったデータ(Webページ)を一定期間保存しておき、再度パソコンからリクエストがあったときはWebサーバーに問い合わせるのではなく、保存してあるデータ(キャッシュに保存されている情報)を送ります。これにより、目的のWebページに速くアクセスできるらしいのです。これも管理者の設定・環境によるようです。アクセス速度アップの実感はありません。

3.データの行き来を管理することができる。

これは、LUNとインターネットの接続に関することのようです。外部からのアクセス制限をしたり、LUNへの進入を防ぐ役割、外部からの不正進入を不是具「ファイアウォール」と、コンピューターとインターネット上のサーバーとでやり取りするデータを管理する「フィルタリング」機能のようです。

プロキシ・サーバーの管理者がどう設定するかのような気がします。プロバイダーの説明には「フィルタリング」機能はありません。他のサービスでフィルタリングの設定があります。

サーバからクライアントに送信されるデータをモニタリングして、それらのデータを自由に改変したり、通信自体を妨害することができることを考えれば、プロバイダーの「ホームページウイルスチェックサービス」で使われている可能性も高いと思います。
というより、下記のサイトをみると、この機能が一番利用されているような気がしたり。

プロキシサーバー入門
(実はこのサイトはブロックされませんでしたが、サイトの中のリンクがホームページウイルスチェックサービス」によりブロックされました。リンクは記載しません。匿名性の確保のなかの(ENV Checker)としてリンクがはられた先です。おそらく、全く問題はないとは思いますが念のため。)
プロキシサーバの機能
・キャッシング :コンテンツ取得の高速化、サーバ負荷の軽減、トラフィックの軽減
・フィルタリング :コンテンツのデータ加工
・通信経路変更: 通信の高速化、自宅サーバの動作確認
・匿名性確保:プライバシーの保護、セキュリティの強化、アクセス制限の回避


匿名性確保

ユーザの様々な個人情報が要求先のwwwサーバとWebページ管理者に伝わってしまいます。実際にどのような情報が漏れているか確認するために、ブラウザにプロキシを設定していない状態で(ENV Checker)を見てください。インターネット上での個人情報とも言うべきあなた固有の様々な情報が筒抜けになっているはずです。例えば、ユーザのIPアドレス、ホスト名そしてブラウザやOSの種類等があります。

フィルタリング

・ユーザを認証することによってアクセス制限できる
例) 特定の範囲内のIPアドレスからのアクセスのみを許可する

・ユーザに対して特定のコンテンツの取得(閲覧)を制限できる
例) 予め特定のURLを登録しておくことにより、それらのサイトの閲覧を禁止する

・受信したコンテンツをチェックできる
例1) 受信したコンテンツに不適当な単語が含まれていないかチェックする
例2) ウィルスチェック

・受信したコンテンツを加工し付加価値を与えることができる
例1) 受信したコンテンツの文字コードを変換した結果を返す
例2) 受信したコンテンツを機械翻訳した結果を返す
例3) 受信したコンテンツに広告を付加した結果を返す
例4) 受信したコンテンツがgzip等で圧縮されている場合、展開した結果を返す

4.LAN内のパソコンにグローバルIPを割り振る必要がなくなる。

4は今回のプロバイダーのサービスとは別のことのようなので、勉強はパス。

プロキシサーバー経由でも完全な匿名性があるわけではありません。悪いことはしないように。
やはり、いままでどおり、ルーターはトリガー接続で、出来るだけ必要ないときはブラウザーを終了しておこうと思います。

でもかなり面倒になりました。ブラウザを立ち上げるたびに、IDとパスワードを入力しないといけないのは。設定した時にパソコン保存しなかったし、オートコンプリート機能を使っていないので。

ITpro Skiliup → プロキシ・サーバーの役割とは?

java →  プロキシサーバーとは何ですか。

人気blogランキングへ
 ← ボケネコに励ましの一票を。

★クリックで救える命がある★ ←クリックして募金をお願いします。