VPNは何故必要なのか?SSL-VPNとは?

ニューノーマルな働き方ということで、アフターコロナにおいてもテレワークが継続される動きが強くなっているように感じる今日この頃。

テレワークを進めるには、セキュリティ対策は必須であり、そのためにはIT投資を行う必要があります。ただ、企業規模が1万人以上の大企業の多くはテレワークを取り入れているけど、中小企業はテレワークのためのIT投資が難しく、実施率が低いというデータがあります。確かに直接の利益を生まない投資は難しいのはわかります。ただ、それだけの投資をする価値はあると私は考えています。コロナが収束した後も、例えば、子供ができた、親の介護が必要になった、持病が悪化した等、様々な事情で会社に出社できなくなることもあるでしょう。せっかく育てた人材をそのような事情で手放してしまうのはあまりにもったいないです。そんなとき、自宅から仕事ができる環境が整っていれば、また結果は変わってきます。

特に今の若い人はテレワークに魅力を感じているようです。もしかしたら、テレワーク導入により、新卒採用の応募者が増えるかもしれません。(これは半分冗談です。。)

では、そのテレワークを実現するために必要なIT投資とは何でしょう。ひとつは前回記事にした「デスクトップ仮想化(VDI)」です。VDIの詳細については以下の記事を参照してください。

そしてもうひとつが「VPN」です。昔からあるものですが、このコロナ禍で再び注目が集まっている技術です。今回はVPNを導入する目的から、VPNの種類のひとつである、SSL-VPNについて、どのような技術でどういったセキュリティ対策になるのかについて見ていきたいと思います。

VPNとは

離れた拠点間で仮想的に専用線のような回線を構築して、安全に通信する方法がVPN(Virtual Private Network)です。VPNによる通信を実現するには、通信事業者が提供しているサービスを利用する方法と、自分でインターネット上にVPNを構築する方法があります。

VPNの種類

VPNのうち、ネットワーク層にIPを用いる方法には2種類あります。
NTTなどの通信事業者が提供するIP-VPNサービスを利用するIP-VPNと、IPsecを使ってインターネット上に独自にVPNを構築するインターネットVPNです。
また、トランスポート層にSSLを用いるSSL-VPNという方法もあります。

VPNの目的

AさんAさん

いきなりですが、なぜVPNが必要なのでしょうか?個別に暗号化通信したり、ファイルにパスワードをかけたりすれば良いのでは?

確かに、共通鍵を使用してファイルを暗号化すれば、途中のネットワーク上でファイルを盗み見られても問題ありません。そもそも、WordやExcelの機能でファイルにパスワードを設定することもできるので、パスワードを電話で共有するだけで事足りて、わざわざVPNでセキュアなネットワークを構成する意味はないように思えます。

この疑問については、過去のIPA情報処理試験の問題を借りて考えてみます。

Sさん

基本的なことですが、これらのVPNを用いる意義は何ですか。例えば、AESといった共通鍵暗号化方式で暗号化したファイルを転送すれば、VPNは必要ないと思います。

O課長O課長

そうとは言い切れないよ。ファイル転送の際、暗号化によって盗聴は防げるが、暗号化だけでは、[①]や[②]の脅威を防ぐことはできない。
VPNを適切に用いれば、それらの脅威に対処できる。また、暗号鍵は接続ごとに更新することが望ましいので、そのための仕組みもVPNでは利用できるんだ。

SさんSさん

なるほど。VPNで総合的なセキュリティを確保できるということですね。

SさんとO課長の会話でした。では、早速ですが、空欄①、②に入る字句はなんでしょう?
ファイル暗号化だけでは防げない脅威があり、VPNはそれらの脅威もカバーできると言っています。

答えは、「①:意図しない相手との通信」「②:データ破壊」です。「なりすまし」と「改ざん」でも正解ですね。これらはパスワードを設定しただけでは防げません。
さらに言うと、「VPN導入後、利用者の手間がかからない」という利点もあります。ファイルを送る度に暗号化していては面倒ですが、最初にVPNの経路を作ってしまえば、その後は何も気にせずセキュアな通信を行えます。

まとめると、VPNの利点は、暗号化だけでなく、認証、改ざん検知なども含めた総合的なセキュリティを確保できること、かつ、利用者の利便性が高いことが挙げられます。

SSL-VPNとは

SSL-VPN(Secure Socket Layer Virtual Private Network)とは、暗号化プロトコルにSSLを利用してVPNを構築する方法です。TLS-VPNとも呼ばれます。

幾つかのVPN技術の中でもSSL-VPNは、その使いやすさから多くの場面で利用されています。
SSL-VPNは、リモートアクセス技術として、組織外部ネットワークから内部ネットワークへのリモートアクセスに用いられることが多いですが、VPNアクセス時の認証や通信の暗号化といったSSL-VPNに備わる機能は、組織内部ネットワークにおいてもセキュリティへの対応用途に使用可能です。

サーバー側にはSSL-VPN装置が必要ですが、クライアント側はWebブラウザがあれば良く、新たなソフトウェアを導入する必要がないので、手軽にVPNを構築できるというメリットがあります。

しかし、そもそもSSLはトランスポート層のプロトコルであり、TCPを使うプロトコルにしか対応できません。そのため、UDPを利用するプロトコル(例えば、IP電話のRTP)は使えないなど、VPNの用途が限定されてしまうデメリットがあります。

ただし、ソフトイーサネットなど、疑似的なLANカードを利用してVPNトンネルを作るSSL-VPNレイヤ2フォワーディング方式などの応用技術を利用すれば、デメリットを解消することはできます。

SSL-VPNの動作方式

SSL-VPNの基本的な動作方式として以下があります。

SSL-VPNの基本的な動作方式
  • リバースプロキシ
  • ポートフォワーディング
  • レイヤ2フォワーディング
Sさん

何が違うのでしょう?

O課長O課長

リバースプロキシはOSI参照モデルで言うレイヤ7、ポートフォワーディングはレイヤ4、レイヤ2フォワードはレイヤ2で動作するという違いがあるよ。

Sさん

うーん、よくわかりませんが、レイヤ7よりレイヤ2で動作させた方が制限が少なくなるということですか?

O課長O課長

そのイメージであってるよ。例えば、リモート接続したい社内システムは、様々なサーバー機器、OS、ミドルウェアなどを組み合わせて構築され、利用されるプロトコルも様々であった場合、リバースプロキシやポートフォワーディング方式では、設定が多くなり管理が煩雑になってしまうよね。であるなら、レイヤ2フォワードを使用した方が望ましいと言えるんだ。

SさんSさん

レイヤ2で動作する機器といえば、スイッチングハブが思い浮かびます!

O課長O課長

そうでだね。レイヤ2フォワーディングを使用した場合、SSL-VPN装置がスイッチングハブになって、PCとサーバーがそのスイッチングハブでつながっていると考えるとわかりやすいよ。

例えば、HTTPでの接続を例にした場合、レイヤ7とレイヤ2で通信できるものの違いを考えてみます。

リバースプロキシ方式でHTTPの設定をした場合(レイヤ7)は、HTTPしかセキュア通信対象になりませんが、レイヤ2フォワーディングであれば、すべてのプロトコルの通信が対象となります。

今回の例では、社内システムが利用するプロトコルが様々であるとしていますから、TCPのHTTPやFTP、UDPやICMPなどなど、いろいろ使っていると想定されます。そのため、リバースプロキシやポートフォワーディングのようにプロトコルやポートが限定されている仕組みでは、正常に通信が行えない可能性があります。

その点、レイヤ2フォワーディング方式であれば、クライアントPCとSSL-VPN装置間で作られるSSL/TLS接続トンネル上で、レイヤ2の階層で中継されるため、スイッチングハブで接続されたものと同じであり、上位のプロトコルが何であっても問題なく通信できるということです。

SSL-VPNの構成例

SSL-VPNの構成例を下図に示します。

この例では、インターネットから社内システムに接続しようとした場合の通信経路は以下のようになります。

インターネット → FW → SSL-VPN装置 → FW → ルーター → 社内システムサーバー群

では、具体的に外部から社内システムへ接続するまでの流れを追いかけてみます。

  1. クライアントPCのWebブラウザからHTTPSにてSSL-VPN装置に接続する。
  2. SSL-VPN装置への接続時の表示される認証フォームに、ユーザIDとパスコードを入力する。(その際のユーザ認証データはSSL暗号化される。)
  3. ユーザ認証が成功すると、SSL-VPNのセッションが確立される。

セッション確立後は、社内システムへの接続が可能になり、ファイル共有や電子メール等を使用する事が可能となります。

クライアントPCとSSL-VPN装置間でSSL-VPNセッションが確立された後、SSL-VPN装置はスイッチングハブのような動作に代わるため、クライアントPCはインターネット上から社内システムのLANに接続できるというわけです。

レイヤ2フォワーディングのメリット・デメリット

レイヤ2フォワーディング方式では、全てのアプリケーションをSSL-VPN通信で使用することができるということが最大のメリットと言えるでしょう。利便性が高くプロトコルによる制限もないため、とても便利ですが、逆に言えば、リモートからでも何でもできてしまうということなので、不要なサービスを停止する、ポートを塞ぐなどの追加のセキュリティ対策は必ず必要な方式とも言えます。

また、この方式については、専用のクライアントソフトをインストールする必要があります。有名なのを例に挙げるとJuniper社のSSL-VPN製品では、クライアントPC側にはPulse Secure(Network Connectの後継)というソフトウェアをインストールすることになります。

そのソフトウェアを起動するとネットワークアダプタに仮想NICが追加され、仮想NIC経由で通信することで外部からでも社内LANのスイッチングハブに接続しているかのように通信できるという仕組みです。

まとめ

レイヤ2フォワーディングはSSL-VPNの方式の中で2番目に使われている方式です。利便性が高く制約もほとんどないことから、複雑化する社内システムを利用するにはとても便利な方式です。ただその反面、セキュリティに対する懸念は残ります。

では、最も使われている方式は何でしょう。それは「リバースプロキシ」方式です。SSL技術とリバースプロキシ技術を組み合わせた方式であり、セキュリティの面ではこちらの方式が優れていると言えるでしょう。

次回はその「リバースプロキシ」方式について詳しく考えていきます。