プロキシサーバとは
proxyサーバとは、代理で通信を行うサーバのことです。
内部ネットワークのコンピュータが外部ネットワークにアクセスするときに通信を中継します。
現代では、HTTPプロキシサーバであることが多いです。
- 代理通信機能
- キャッシュ機能
- フィルタリング機能
- プロキシ認証機能
プロキシサーバを使った通信方式
HTTP通信の仕組み
- プロキシサーバとPC間でコネクションを確立(3Wayハンドシェーク)
- PCがHTTP要求:GET アクセス先のURLを指定 →DNSサーバにPCが接続する必要がない。
- アクセス先にリンクをプロキシサーバが取得
- プロキシサーバとWebサーバ間でコネクションを確立(3Wayハンドシェーク)
- プロキシサーバからHTTP要求:GET
- WebサーバからプロキシサーバへHTTP応答
- プロキシサーバからPCへHTTP応答
HTTPS通信の仕組み
プロキシサーバとPC間でコネクションを確立(3Wayハンドシェーク)
PCからプロキシサーバへトンネリング要求:CONNECT アクセス先のURL:ポート番号
FQDMを名前解決し、IPアドレスを入手。指定されたポート番号を取得
プロキシサーバとWebサーバ間でコネクションを確立(3Wayハンドシェーク)
接続完了
PCとWebサーバ間でTLS/SSLハンドシェイクし、セッション鍵を互いに持てるようになる
PCからプロキシサーバへ通常のHTTP要求
プロキシサーバをそのまま中継し、WebサーバにHTTP要求が送られる。
7では、プロキシサーバはそのまま通過させるので、URLフィルタリングやコンテンツフィルタリングはできません。
そのまま通過させることをトンネリングといいます。
PCにおけるプロキシサーバの設定
プロキシサーバの指定方法は3種類あります。
- 手動で設定:プロキシサーバのFQDNやIPアドレスを直接指定して設定
- PACファイルを利用:プロキシサーバの設定が書かれたPACファイルのURLを設定
- WPAD:プロキシサーバを自動的に見つけ、設定
リバースプロキシサーバ
リバースプロキシサーバは、外部から内部LANのサーバにアクセスする場合に用いるプロキシサーバのことです。
通常のプロキシサーバは内部から外部にアクセスするときに中継するのに対し、リバースプロキシサーバは外部から内部に通信する場合に用います。