全7109文字
PR

ネット君 安全な通信のためにインターネットVPNを導入している企業は多いですよね。

インター博士 比較的低コストで実現できるからな。

ネット君 インターネットVPNの代名詞と言えばSSL-VPN。

インター博士 そうだな。ネットワーク技術者なら必須の知識で、ネットワークスペシャリスト(ネスペ)試験でもよく取り上げられる。今はSSL-VPNと、そのベースになるTLSの話をしよう。

 SSL-VPNはインターネットVPNの一種。利便性が高く低コストで実現できるため、端末のリモートアクセスや拠点間通信などで広く利用されている。

 SSL-VPNは暗号化や認証のためにSSLを使っていたのでこの名前が付けられた。だがSSLにセキュリティー上の欠陥が見つかったため、現在ではSSLの後継であるTLSが使われている。ただTLSを使っていても以前の名残からSSL-VPNと呼ばれる。

動作方式は3種類

 SSL-VPNの動作方式には、リバースプロキシー方式、ポートフォワーディング方式、L2フォワーディング方式の3種類がある。

 リバースプロキシー方式では、接続先の拠点側にSSL-VPNゲートウエイを設置する(図1)。このSSL-VPNゲートウエイがリバースプロキシーとして機能する。

図1●リバースプロキシー経由でサーバーにアクセス
図1●リバースプロキシー経由でサーバーにアクセス
リバースプロキシー方式によるSSL-VPNの流れ。リバースプロキシー方式では、接続先の拠点側にSSL-VPNゲートウエイを設置する。このSSL-VPNゲートウエイがリバースプロキシーとして機能する。利便性が高いがWebアプリケーションしか利用できないのが難点。
[画像のクリックで拡大表示]

 組織内部のサーバーにアクセスしたいクライアントは、Weブラウザーを使ってSSL-VPNゲートウエイにHTTPSでアクセスする。

 SSL-VPNゲートウエイではアクセスしてきたクライアントを認証。認証が成功すると、クライアントがアクセスしてきたURLに応じてURLを変換。SSL-VPNゲートウエイがクライアントの代理としてサーバーにアクセスする。

 この方式ではクライアントに通常のWebブラウザーが使える。ソフトウエアを別途インストールする必要がないので利便性が高い。

 一方で、Webブラウザー上で動作するアプリケーション(Webアプリケーション)しか利用できない。

Webアプリ以外も利用可能

 ポートフォワーディング方式とL2フォワーディング方式ではWebアプリケーション以外のアプリケーションも利用できる。

 ポートフォワーディング方式では、クライアントに専用のアプリケーションを導入する(図2)。専用のアプリケーションはSSL-VPNエージェントなどと呼ばれる。Webブラウザーで動作するJavaアプレットなどを使うケースが多い。

図2●ポート番号で振り分け先を決める
図2●ポート番号で振り分け先を決める
ポートフォワーディング方式によるSSL-VPNの流れ。ポートフォワーディング方式では、クライアントに専用のアプリケーション(SSL-VPNエージェント)を導入。SSL-VPNエージェントがSSL-VPNゲートウエイとTLS通信する。SSL-VPNゲートウエイはアクセス先のポート番号で振り分け先を決める。
[画像のクリックで拡大表示]

 ポートフォワーディング方式の流れは次の通り。クライアントはWebブラウザーでSSL-VPNゲートウエイにアクセスする。するとSSL-VPNエージェントがダウンロードされて実行される。

 ダウンロードされたSSL-VPNエージェントはSSL-VPNゲートウエイとTLS通信を確立。クライアントのアプリケーションはこのTLSトンネルを経由してSSL-VPNゲートウエイと通信する。

 アクセスの振り分けにはポート番号を使う。SSL-VPNゲートウエイでは、どのポート番号をどのサーバーに割り振るのかを事前に定義しておく。例えばTCP25番宛てのアクセスはメールサーバーに振り分けるといった具合だ。

 SSL-VPNゲートウエイは宛先ポート番号に従って、事前に定義したサーバーに通信を振り分ける。この方式ならWebに限らず任意のプロトコルを利用できる。ただしポート番号に対応するサーバーを事前に定義しておく必要があるので、ポート番号が固定される。このため使用するポートを動的に変えるFTPのようなプロトコルは利用できない。