プロキシサーバとは,ユーザが使っているコンピュータの代わりに,Webページなどのインターネット上のコンテンツへのアクセスを代行して行うサーバのことを言います。proxyは代理と言う意味です。
【通常】
(1)要求
┌─────┐──→┌─────┐
│ユーザPC│ │ WWW │
└─────┘←──└─────┘
(2)応答
【プロキシサーバ利用】
アクセスを代行
┌─────┐──→┌───────┐──→┌─────┐
│ユーザPC│ │プロキシサーバ│ │ WWW │
└─────┘←──└───────┘←──└─────┘
図を見ると,コンテンツへのアクセスが遠回りとなってしまいますが,プロキシサーバを利用することで次のようなメリットがあります。
(1) キャッシュ機能
プロキシサーバでは,データのキャッシュを行うことができます。例えば,複数のユーザがプロキシサーバを利用してインターネットへアクセスする場合,あるユーザーがアクセスした情報を別のユーザーがアクセスするときに,インターネットから情報を取得するのではなくプロキシサーバから情報を得ることで,表示の高速化が可能になります。
(2) ファイアウォール機能
上の選択肢にもあったように,プロキシサーバを用いることで外部ネットワークから見えるのはプロキシサーバとなります。
インターネットでアクセスする際,アクセス先のサーバ管理者がアクセスログを取っていれば,そこにアクセスするたびにホスト名やIPアドレス,OSの情報など様々な情報をアクセス先に通知していることになります。
企業などで社内のアドレスなどがむやみに外部に知られてしまうと,DoS攻撃などの対象になってしまう場合もあるので,このような場合にプロキシサーバは有効となります。
他にも,コンテンツのフィルタリング機能などもあります。代表的なプロキシサーバソフトとしては,SquidやApacheがあります。