第一回 プロキシサーバーを駆使したセキュリティシステムの構築 03A2068 古沢 透
研究テーマの確認 ・プロキシサーバーを駆使したセキュリティの構築 前期でプロキシサーバーを含めたサーバー全般の勉強をして、後期にはそれらの知識をベースにさらに強固なセキュリティシステムの構築を目指す。 途中で変更することも無きにしも非ず… 最初にサーバーやプロキシサーバーについてまとめてみることにした。
サーバーとは ネットワーク上でホストからの要求に応じて自身が持っている文書や画像ファイルなどのコンテンツ(情報)や機能を提供するコンピュータのことをいう。
サーバーの種類 ・Webサーバー・・・Webコンテンツの提供。 ・FTPサーバー・・・ファイルの転送。 ・メールサーバー・・・メールの送受信。 ・ニュースサーバー・・・ニュースの配信や中継。 ・DBサーバー・・・データベース機能の提供。 ・DNSサーバー・・・ドメイン名からIPアドレスを割り出す。 ・アクセスサーバー・・・ダイヤルアップ接続の受付。 ・ファイルサーバー・・・ファイルを共有し、ファイルの編集も可能。 ・タイムサーバー・・・ネットワーク全体の時間を正確に合わせる。 ・プリンタサーバー・・・一台のプリンタを複数のPCで使う場合に使用。 ・DHCPサーバー・・・IPアドレスの割り振り。 などなど…
プロキシサーバー(HTTPver)とは Webブラウザからのインターネット向けの要求を受け取り、代理となってインターネットのWebサーバーにアクセスする。返信がくると、またプロキシーバーを介してWebブラウザに送り返す。プロキシサーバーが介入した場合、WebブラウザとWebサーバーは直接通信を行わない。 プロキシサーバーは通信アプリケーション(プロトコル)毎に専用の中継ソフトを使用するため、アプリケーションゲートウェイとも呼ばれる。 プロキシサーバーはファイアウォールの一種でもある。
プロキシサーバーの接続形態
プロキシサーバーの機能① キャッシュ機能 サーバーから受信したコンテンツを一時的にHD内に保存しておく機能。同じサーバーへのアクセス要求が発生した場合、プロキシサーバーから送り返すので、すばやくコンテツを取得出来る。その場合は本来のサーバーにアクセスしなくて済むので、そのサーバーにかかる負担が軽減出来る。また、インターネット上の回線も利用しないので、回線使用量も軽減する事が出来る。 Webブラウザのキャッシュ機能とは違ってプロキシサーバーを利用する全ての人が利用したコンテンツがキャッシュ機能でHD内に保存されるので、他の人が利用したコンテンツでもすばやく取得する事が出来る。
プロキシサーバーの機能② フィルタリング機能 プロキシサーバーを介する場合、ユーザーを認証する事によってアクセス制限をかけたり、あらかじめ特定のURLを登録しておくことにより、それらのサイトの閲覧を禁止する事が出来る。 また、受信したコンテンツをチェックする事により、ウィルスチェックしたりする事も可能である。 他にも受信したコンテンツを翻訳・変換するという機能もあるが、機械翻訳であるため信憑性は薄い。 あまり色々な制限をかけてしまうとプロキシサーバーの存在意義(高速なWebブラウジング)がなくなってしまう。
プロキシサーバーの機能③ 通信経路変更機能 目的のサーバーとの間にプロキシサーバーを設置するので、直接通信をする場合とは異なる通信経路を取ることになる。一般的にプロキシサーバーを介入させる場合は直接通信を行う場合よりも通信速度が遅くなるが、目的のサーバーとの間の通信回線が細い、若しくは混雑している場合、直接通信する時よりも通信速度が速くなる。
プロキシサーバーの機能④ 匿名性を確保する機能 サーバーと直接通信をする場合、ユーザーの個人情報が伝わってしまう。プロキシサーバーを介する事によって、サイト管理者のアクセス解析によるプライバシー侵害からの保護、IPアドレス判明によるDos攻撃などからユーザーを守ることが出来る。 また、特定のサイトからアクセスを拒否された場合、プロキシサーバーを介する事によって接続可能になる場合がある。これは相手側がIPアドレスやホスト名でユーザーを特定している場合、プロキシサーバーを介する事によって相手側に伝える環境変数を偽装し、別のユーザーとしてアクセスする事が出来る為である。(あくまで副次的な機能)拒否
プロキシサーバーを構築するためのソフトウェア ・Squid・・・プロキシ専用のソフトウェア ・Apache・・・Webサーバーの一種 ・DeleGate・・・純国産のプロキシソフトウェア。データを付加価値付きで中継する機能に重点が置かれて作られた。 ・Socks・・・これ一つで様々なプロトコルをカバー出来るが、キャッシュ機能を持っていない。 ・CGIプロキシ・・・リクエストの度にCGIを起動させて、ユーザーの代わりに目的のサーバーからコンテンツを取得する機能を持つCGIプログラムの総称。厳密にはプロキシサーバーではない ・Coral・・・P2P技術によりWebコンテンツを効率的にキャッシングし、Webサーバーへの負荷を大幅に軽減することを目的としたプロキシ。 などなど…
プロキシサーバーの歴史 インターネットが普及し始めた1990年代、少なかったアクセス回線や、IXへのバックボーン回線の容量を補う目的で、多くのISPで契約者用プロキシサーバーが用意された事も多かった。しかし、その後のIXやバックボーン回線の増強、2000年頃からのWebサイト数の増加や、ブロードバンド接続の普及によって、プロキシの欠点が目立つようになり、単なるwebサイトへのアクセスの高速化を目的としたプロキシサーバーは廃止したプロバイダが多い。
参考サイト ・CyberSyndrome プロキシサーバー入門: http://www.cybersyndrome.net/pg.html ・Wikipedia: http://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%82%AD%E3%82%B7%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC
今後の予定 前期はサーバー全般の勉強をすると決めているので、他のサーバーももっと詳しく勉強してみる予定。