SSL-VPNの歴史と世界観
コロナウィルス対策としてテレワークが大注目されている。政府どころか東京メトロ自身がなるべく電車に乗らずにテレワークしましょうと駅内アナウンスしているくらいだ。
テレワークを進めるために重要システムの1つVPNであることは疑いようがない。中国のグレートファイアウォールを超えてTwitterにアクセするためのIPアドレス変換を目的としたサービスではなく、本来のリモートアクセスソリューションとしてのVPNである。
嫌われ者のVPN
ただこのVPN、「遅い」「切れる」「繋がらない」「リテラシー低いユーザーには使いこなすのが難しい」と頗る評判が悪い。社員数が高い大企業ほどその傾向が強いと思う。
ビジネスアプリケーションをクラウド化しても、セキュリティに厳しい大企業であればAD FSやSAML認証サービスを使って自社グローバルIPからしかアクセスできないようにACLをかけているケースが多い。そのような大企業にとっては、クラウド化=VPN不要とは言い切れない。
以前私はSSL-VPNのプロダクトセールスを担当していて、その手の製品群としてはハイエンド寄りのプロダクトを中堅〜大企業に営業していた。はっきり言ってVPNをノートラブルでオンボーディングして運用し続けるのは不可能だ。まともな切り分けもできない低リテラシーユーザーを何百人、場合によっては何千人もサポートする情報システム部のことを思うと辛い。
それでも、VPNは使われてきたし、これからも使われていくだろう。クライアントレスとかゼロトラストとかクラウドとか色々新しいものはあるし、Intune入り端末ならExchange Onlineへ直接アクセスできるといった素晴らしいVPN不要のモバイルソリューションはある。
それでも基幹系含めたすべてのビジネスアプリケーションにそのようなことを適用するのは不可能だ。アプリケーション依存なしにアプリケーションへアクセスするには低いレイヤーのアクセス手段が必要となる。それはLANケーブルであり、社内WiFiであり、VPNなのである。
もちろんTeamViewerとかChromeリモートデスクトップとかあるわけだが、流石にそれらをPC何百台規模で使う企業はいないだろう。
そもそもVPNって何?
すごく簡単に言えば、バーチャルなNIC(Network Interface Card)を端末に作って、物理的にその端末は遠く離れた場所にいるのに、仮想的に社内ネットワークに接続されている状態を作り出すことだ。
VPNトンネリングなどとも呼ばれ、販促資料や構成イメージ図ではよく「長い筒」で描かれる。そのトンネルが仮想的なLANケーブルだと思ってもらえると分かりやすいと思う。詳しく知りたい人は専門サイトがたくさんあるのでググってみてほしい。
VPNの種類
PPTP、L2TP/IPSec、IPSec、SSL-VPNといった種類がある。細かいことは割愛するが、企業で全社的に使うとなるとだいたいSSL-VPNが採用される。他のやついまいち信頼性や安定性に欠けるとか、暗号化強度が弱いとか色々ある。もちろんSSL-VPNが万能というわけでないのだが、比較優位はあると捉えてもらってOKだ。
逆に、情報システム部がトラブル時にリモートメンテナンスするとかその程度の用途であればライセンス費が安いもしくは無料のIPSecが使われることもまだ多いと思う。
SSL-VPNの種類
またややこしいのだが、SSL-VPNには主に3つの通信方式がある。「リバースプロキシ型」「ポートフォワーディング型」「トンネリング型」の3つである。
実は第一世代のSSL-VPNというのは「リバースプロキシ型」であり、これは所謂ネットワークレイヤーでPCとLANを繋ぐためのVPNではなく、その名の通りリバースプロキシに近いものだった。一番の売りはVPNクライアントソフトをPCにインストールする必要がないというもので、それは大きなメリットである反面、アーキテクチャ上Webアプリケーションにしかアクセスできないという致命的な弱点があった。OutlookとかNotesクライアントは使えないし、世の中Webが主流になる前にガリガリ作ってしまったクライアント・サーバー型アプリケーションも当然NG。これなら従来通りIPSecを使っておけばいいという話になってしまう。しかもWebアプリケーションの作りによっては動く・動かない問題があり、事前検証が必要となる。
社内ヘルプデスクの人たちはVPNクライアントのサポートなどという面倒なことはしたくないのだが、ユーザー部門の要件を満たせないのではそもそも導入する意味自体がない。「クライアントレス」というVPNの新コンセプトは「レガシーアプリケーション」に敗れ去ったのである。
そして次に出てきたのが「ポートフォワーディング型」だ。これは専用プログラムをPCにインストールし、それがTCPアプリケーションへのアクセスリクエストをキャプチャして、ローカルプロキシみたいなやつを使って社内に通信を転送するというものだ。
「Webだけじゃな話にならん」という声がたくさんあったのは容易に想像できる。TCPアプリケーションはサポートされているので前述の「リバースプロキシ型」よりはだいぶ対応力が上がっているが、各アプリケーションがUDPを使っているかどうかなんてアプリ部門やユーザー部門には知ったことではないはずだし、もはやクライアントレスではない。
いまいち存在が中途半端であり、第3の「トンネリング型」がリリースされたことによって大して必要とされなくなってしまった。私がこの機能を能動的に提案したことは一度もなかった気がする。
最後の「トンネリング型」はIPSecと同じように、仮想NICをPCに作って、トンネルでPCとLANを繋ぎ、プールしておいたローカルIPを割り当てるものだ。それによりアプリケーション依存という致命的な問題は解決されたが、結局IPSecとほとんど同じ接続方式に一周回って戻ってしまったのだ。クライアントレスでもゼロトラストでもない、伝統的VPNへの回帰である。
それでもこの方式がほとんどのSSL-VPNユーザーに使われている。テック企業が当時の最先端技術を用いて色々研究開発したものの、世の中は「低いレイヤーで繋ぐのが一番よい」という判断をしたのだ。
じゃあSSL-VPNって一体何がいいの?
細かいことを言えばSSL(今で言うTLS)ポートを使うからネットワーク設計しやすいとか、昔IPSecでVPN接続するとき多発したファイアウォールのNAT越え問題が発生しないといったネットワーク的優位性はある。
ただ、それよりもSSL-VPN製品がユーザーに支持されていたのは実は端末のセキュリティ状態をチェックしてからVPN接続するという、VPNそのものとは別部分であった。恐らくこれは2020年の現在も変わっていないだろう。
具体的にはWindowsアップデートが何日間当たっていないとか、指定のアンチウィルスソフトが入っているとか、特定の名前のファイルが特定フォルダにあるかどうかをチェックして簡易的に端末認証するとかその手のものである。当時注目を浴びていた検疫ネットワークと同じような発想だ。
これが大企業のリモートワークセキュリティポリシーにミートし、それら製品を携えたCisco・Juniper・F5・SonicWallといったメインプレイヤーたちが2000年初旬の市場をリードすることとなった。
今のSSL-VPN
実は、SSL-VPN機能を持ったルータやファイアウォール製品は山ほどある。基本的にはSSL-VPN専用製品というのは今やレアな存在で、UTM(Unified Thread Management)の一機能として提供されている方が普通である。
私がVPN営業やっていたときのトップベンダーであったJuniperもF5もSSL-VPN専用機提供は止めてしまった。コアルーターやロードバランサーに比べれば市場がニッチで大して儲からなかったのだろう。結果、Ciscoの一人勝ち状態なのだと思われる。(競合が勝手にいなくなっていっただけだけど)
メールサーバーアクセス程度であればいちいちVPNなんか使わないで、「ExchangeサーバーにActiveSyncすれば良くない?」というユーザーが増えてきたのもJuniper/F5の事業切り離しの一因だろう。
基幹系はともかく情報系はSaaS化しやすいし、外出先でスキマ時間仕事する程度であればVPNが要らないという人たちの方が多数派だろう。スマートフォン登場のインパクトも大きかったと思う。
「これだけOffice365が大普及したし、人事評価制度が極めて曖昧な日本企業はテレワークに後ろ向きだから、もうVPNは拡大も縮小もしない市場だな」と思っていたのだが、このような大規模なパンデミックインシデントが起きるとは世の中分からないものである。
嫌われ者のVPN、あと10何年は使われ続けるのではないか。