図4 SSL-VPNを利用してパソコンから社内ネットにアクセスする手順<BR>米ジェニパーネットワークスのRA/SAシリーズの例。まずはWebブラウザでSSL-VPNゲートウエイにアクセスして認証を受ける。その後メニューをクリックすればアプリケーションが利用できる。
図4 SSL-VPNを利用してパソコンから社内ネットにアクセスする手順<BR>米ジェニパーネットワークスのRA/SAシリーズの例。まずはWebブラウザでSSL-VPNゲートウエイにアクセスして認証を受ける。その後メニューをクリックすればアプリケーションが利用できる。
[画像のクリックで拡大表示]
図5 どんなアプリケーションでも,どことでも通信できるよう進化してきた&lt;BR&gt;SSL-VPNゲートウエイが登場した当初は,用途がWebアクセスに限定されていた。今では多くの製品がIPsecと同様のトンネル接続で,どんなアプリケーションでも使えるようにしている。
図5 どんなアプリケーションでも,どことでも通信できるよう進化してきた<BR>SSL-VPNゲートウエイが登場した当初は,用途がWebアクセスに限定されていた。今では多くの製品がIPsecと同様のトンネル接続で,どんなアプリケーションでも使えるようにしている。
[画像のクリックで拡大表示]

まずはWebにアクセス

 次に,米ジュニパーネットワークスのRA/SAシリーズを例に,SSL-VPNでアクセスするパソコン側の手順を見ていこう(図4[拡大表示])。細かな画面は違うが,ほかのゲートウエイ製品でも操作方法はほぼ同じである。

 SSL-VPNでリモート・アクセスするユーザーは,まずパソコンのWebブラウザを立ち上げ,SSL-VPNゲートウエイにアクセスする(図4の(1))。アクセスするときには,SSL-VPNゲートウエイのURLまたはIPアドレスを指定する。

 次に,表示される画面にユーザー名とパスワードを入力してログインする(同(2))。するとWebブラウザ上にメニューが表示される(同(3))ので,ここでWebサーバーのメニューを選択すれば,Webブラウザの画面が切り替わり,指定した社内のWebサーバーにつながる(同(4))。

 Webブラウザ以外のアプリケーションを使う場合も,WebブラウザでまずSSL-VPNゲートウエイにログインするのは同じ。次に,表示されたメニューから利用するアプリケーションを選択すると,SSL-VPNゲートウエイと通信が可能な状態でアプリケーションが起動する(同(5))。

 なお,同じリモート・アクセスでも,IPsecの操作方法はSSL-VPNと違う。IPsecは,クライアント・ソフトを立ち上げれば,あとはクライアント・ソフトが自動的に接続してくれる*。アプリケーションごとにメニューを選ぶ必要はない。

基本のしくみはWebアクセス

 それでは最近のSSL-VPNゲートウエイ製品が備える機能を見ていこう,まずは接続方法からだ。SSL-VPNの接続のしくみは,使用するアプリケーションによって異なる。接続方法は大きく3種類ある(図5[拡大表示])。それは,(A)Webアクセス,(B)ポート・フォワーディング,(C)トンネル接続——である。

 (A)のWebアクセスでは,SSL-VPNゲートウエイ内部のWebサーバー機能がクライアントからの接続を待ち受けている。アクセスを受け付けたときパソコンにメニューを返すのは,SSL-VPNゲートウエイ内部のWebサーバー機能だ。このメニューでユーザーが社内のWebサーバーを選択すれば,ゲートウエイ内部のWebサーバー機能が暗号を復号するリバース・プロキシ*として働き,社内Webサーバーへのアクセスを中継する。

 このしくみを拡大して,WebブラウザだけでWeb以外の社内サーバーにアクセスできるようにする製品は多い。例えば,Webメール機能によってWebブラウザからメールの到着を確認したり送信できるようにする。このような場合,SSL-VPNゲートウエイは,ログインしたユーザーに成り代わってサーバーにアクセスし,結果をWeb画面に変換するゲートウエイ機能も併せ持つ。

ポート固定のアプリに対応

 ただし,Web以外のサーバーにWebブラウザでアクセスする方法では,本来のアプリケーション・ソフトでアクセスする使い勝手は再現できない。またWebブラウザでアクセスできるのは,メールなどのよく使われる少数のアプリケーションに限られる。

 そこで,日頃から使っているアプリケーション・ソフトから直接社内のサーバーにアクセスするための機能が発展してきた。まず登場したのが(B)のポート・フォワーディングだ。その手順を見ていこう。

 リモート・アクセスするパソコンには,Webブラウザに表示されるメニューからWeb以外のアプリケーションを選んだ時点で,JavaアプレットかActiveXコントロール*でできたSSL-VPNエージェント・プログラムがSSL-VPNゲートウエイから送り込まれる*。SSL-VPNエージェントは,起動と同時にパソコンのOS内部にあるホスト名とIPアドレスの対応ファイルを書き換える*。すると,パソコンのアプリケーション・ソフトがURLを指定して通信する際に,同じパソコン内で起動しているSSL-VPNエージェントと通信するようになる(Bの(1))。

 SSL-VPNエージェントは,個々のアプリケーションから受け取ったパケットの中身をそのアプリケーション専用のSSLトンネルで転送する(同(2))。SSLトンネル経由でパケットを受け取ったSSL-VPNゲートウエイは,内部のパケット・フォワーダでIPパケットを組み上げて,対応付けられたサーバーに転送する(同(3))。

 パケット・フォワーディングにおいては,アプリケーションが通信のあて先に使うTCP/UDPのポート番号と社内サーバーのIPアドレスを,事前に1対1で対応付けておく必要がある*

IPを何でも通すトンネルを張る

 (C)のトンネル接続は,パソコンのアプリケーションと社内のサーバーやパソコンの間で自由に通信できるようにする。IP over SSLなど*トンネリング技術*を使う。今ではほとんどのSSL-VPNゲートウエイ製品でトンネル接続が使える。

 トンネル接続を利用するときも,まずWebブラウザに表示されたSSL-VPNのメニューからトンネル接続を選ぶ。すると,SSL-VPNゲートウエイからアクセスするパソコンにトンネル接続用のSSL-VPNエージェント・プログラムがダウンロードされる*。起動したSSL-VPNエージェント・プログラムは,IP用SSLトンネルを張り,SSL-VPNゲートウエイからIPアドレスを取得する。アクセスするパソコンのOSからは,SSL-VPNにつながるネットワーク・インタフェースが新たにできたように見える(Cの(1))。その結果,アプリケーションから社内のサーバーに直接アクセスできるようになる(同(2))。

 SSL-VPNエージェントからトンネル経由で転送されたパケットは,SSL-VPNが内蔵するルーター機能を使って転送する(同(3))。

 トンネル接続には,パソコン側の処理が重くなるというデメリットがある。また,SSL-VPNゲートウエイから割り当てられるIPアドレスが,すでにパソコンで使われているIPアドレスと重なると,うまく通信できなくなる*