最も一般的な5つのVPNプロトコルについて解説

VPN(仮想プライベートネットワーク)の利用者数は、日々増加の一途をたどっています。その中には、「キルスイッチ機能」や「難読化サーバー」、「強力なVPNプロトコル」といった技術的なキャッチフレーズに惹かれて、VPNプロバイダーのサービスを申し込んでいる人も少なくないでしょう。今回の記事では、「VPNプロトコル」にスポットを当ててみたいと思います。

あるVPNサービスがL2TPやSSTPに対応しているという情報をネット上の掲示板で目にしたことがあると思います。この記事を読めば、L2TPとSSTPの違いや、特定のプロトコルに対応したVPNを利用する意味が理解できるようになります。

VPNプロトコルとは?

VPNプロトコルとは、パソコンとVPNサーバー、またはサーバーと一般的なインターネット接続機器の間でデータパケットがどのように移動するかを決定する規格です。既存のVPNプロトコルの機能は、作成者の優先順位の高い問題に大きく依存しています。VPNプロトコルの中には、接続速度を重視したものもあれば、ユーザーのセキュリティやプライバシーを重視したものもあり、それぞれの特徴があります。

しかし、一部のVPNサービスでは、2つのVPNプロトコルを同時に使用することで、VPNアプリケーションやサーバーに革新性を持たせていることは注目に値します。

一般的なVPNプロトコル

以下に、代表的なVPNプロトコルをご紹介します。

1. IKEv2

IKEv2とは、Internet Key Exchange version 2の略で、マイクロソフト社とシスコ社が共同で開発したVPNプロトコルです。2つのIKEバージョンは、当初、ネットワーク接続でのデータ転送ハンドシェイク用のプロトコルとして作成されました。つまり、安全なAES鍵交換のためのプロトコルであり、IPSecと組み合わせることで、データアクセスの認証と暗号化を行うことができます。

IKEv2プロトコルは、他の一般的なプロトコルに比べてあまり普及しておらず、主にモバイルVPNアプリで有名です。モバイルのインターネット接続が弱くて安定していないのは周知の事実で、このプロトコルがモバイルに採用されているのは、まさにそのためです。IKEv2は、接続のダウンタイムが発生した場合、何度でも自動的に再接続します。

Windows、Blackberry、iOSのデバイスはIKEv2に対応していますが、これらのプラットフォームでのIKEv2へのアクセスはライセンス制となっています。AndroidおよびLinux OSでIKEv2を使用するには、サードパーティ製のアプリが必要です。

セキュリティアナリストのDer Spiegel氏は、NSAのスパイ活動の証拠を示しながらIKEv2のセキュリティ脆弱性を明らかにしました。しかし、このプロトコルの脆弱性を悪用する正確な方法はわかっていません。IPSecは、最も可能性の高い侵入経路として隔離されていました。

2. PPTP

PPTPは、Point-to-Point Tunneling Protocolの略で、VPNの歴史の中でも代表的なプロトコルのひとつです。PPTPは今でもいくつかの古典的なネットワーク設定で使用されていて、ほとんどは古めかしいものですが、より実用的なプロトコルを開発するためのフレームワークとして利用されています。

1995年に発表されたPPTPは、Microsoft Windowsの一部のバージョンの認証および暗号化機能に採用されています。登場した当時(1990年代)、PPTPはダイアルアップ接続に対応していたこともあり、流行の最先端を走っていました。

その後、VPN技術は空前の規模で進化し、VPNサービスプロバイダーはより安全なプロトコルに移行しています。PPTPプロトコルのデータパケット暗号化プロトコルは、長い間謎に包まれており、セキュリティ上の脅威にさらされていました。PPTPは時代遅れで安全ではないように思われますが、データの完全性にこだわらず、接続速度を重視する人にとっては、最も高速なVPNプロトコルのひとつであることがわかります。 

3. OpenVPN

OpenVPNは、オープンソースのプロトコルであり、最も普及しているVPNプロトコルのひとつです。VPNサービスプロバイダーは、自社のVPNサービスに合わせてOpenVPNの改良版を利用しています。

OpenVPNは、2001年5月にJames Yonan氏によって初めて公開され、それ以来、Gitリポジトリでソースコードの更新が安定的に行われています。複数の有資格者が貢献したことで、OpenVPNは最も安全なVPNプロトコルのひとつに成長しました。OpenVPNは、ファイアウォールやネットワークアドレス変換(NAT)を凌駕します。一流のセキュリティを可能にするOpenVPNの機能には以下のようなものがあります。

  • 突破不可能なAES-256ビット暗号化(NSAでさえも解読できない)
  • 160ビットSHA1ハッシュアルゴリズム
  • 2048ビット認証
  • 鍵交換のためのSSL/TLS

強力な暗号化と認証機能だけでなく、OpenVPNはクロスプラットフォームのプロトコルでもあります。つまり、Android、iOS、Linux、Windows、macOS、さらにはルーターでも動作するということです。10年前の時点では、VPNサービスは、ネットワークカードを搭載し、ネットワークノードとしての資格を持つハードウェアを備えたデバイスでのみ利用可能でした。新開発のインターネット対応機器には、複数のプラットフォームとの互換性を考慮して、OpenVPNプロトコルまたはその改良版が採用されています。

OpenVPNプロトコルをサポートするサービスのエンドユーザーからは、接続速度の低さに関する不満が繰り返し寄せられていました。その主な原因は、重い暗号化と認証が必要なことでした。これを受けて、開発者は、PPTPほどではないにせよ、より高速な接続を可能にする新しいリリースを行いました。

4. L2TP/IPSec

L2TPは、Layer 2 Tunnel Protocolの略で、PPTPの代替として開発されたトンネリングプロトコルです。L2TPは、データパケットの実際の内容は暗号化しませんが、2つのネットワークノード間の認証を確立するための制御メッセージを隠します。また、場合によっては、追加のレイヤ3暗号化プロトコル(通常はIPSec)を提供することもあります。

L2TPプロトコルの人気は、OpenVPNに続いていると言っても過言ではありません。これは、L2TPとIPSecの組み合わせが、OpenVPNに近いセキュリティ機能を提供するからです。しかし、L2TP/IPSecの実装には大きな欠点があります。それは、L2TP/IPSecプロトコルを使用したネットワーク上でのデータ転送の経路が非常に予測しやすくなっている点です。この予測可能性は、L2TP/IPSecがデフォルトでポート500のUDP経由で接続するために生じます。VPNのデータ転送に使用されるポートが予測可能であるため、ISPやファイアウォールによるブロックの影響を受けやすくなります。 

5. SSTP

SSTP(Secure Socket Tunneling Protocol)は、データトンネリングを利用したもうひとつの一般的なVPNプロトコルです。ただし、当初はリモートのクライアントアクセス用であったため、SSTPはVPNトンネルを介したサイト間接続をサポートしていません。SSTPは、トランスポートレベルで保護されたSSL/TLS接続上で、PPP(Point-to-Point Protocol)トラフィックの転送を可能にします。また、SSTP VPNプロトコルでは、443番のTCPポートを使用してデータを転送するため、ほとんどのプロキシサーバーやファイアウォールを回避することができます。

SSTPは、Windows、BSD、LinuxでサポートされているクロスプラットフォームのVPNプロトコルです。また、macOS、iOS、Android端末で動作させることができるサードパーティのクライアントもあります。また、Windows VistaのService Pack 1以降のすべてのWindows OSにSSTPが搭載されていることも朗報です。RouterOS 5.0や日本のSEILにも搭載されています。このように、前述のプラットフォームに統合されたことで、SSTPをWinlogonやスマートカード認証技術と組み合わせてセキュリティを確保することが可能になりました。

OpenVPNと同様に、SSTPは256ビットの暗号化キーと2048ビットのSSL/TLS証明書を使って接続を認証します。ただし、SSTPはユーザー認証のみをサポートしており、コンピューターやデバイスの認証はサポートしていない点に注意しましょう。

なぜVPNプロトコルが重要なのか?

VPNプロトコルは、この記事で紹介した一般的なものを中心に、それぞれに特徴があります。ここからは、VPNプロトコルが必要である一般的な理由を紹介します。

1. 商用VPNサービスの中核を担う

VPNサービスのサブスクリプションの数は、多くの場合、VPNプロトコルによって提供される安全性の確保につながります。基本的に、考慮されたプロトコルが存在しなければ、商用VPNサービスプロバイダーはビジネスを行うことができないでしょう。

2. ユーザーのデータの暗号化

VPNプロトコルは、高度な機密情報や個人情報を、脆弱なネットワークを介して転送することを可能にします。NSAは「国家安全保障」を確保するために、既知のあらゆるネットワークの脆弱性を利用して情報を収集していることで有名です。AES 256ビットのような強力な暗号化機能を備えたVPNプロトコルは、NSAやサイバー監視に携わる同様の組織から、インターネットユーザーのプライバシーを守ることができます。

3. アクセス前の認証機能

VPNプロトコルでは、ネットワークやインターネット対応機器に保存されているデータへのアクセスを特定のユーザーに許可することが安全であるかどうかを確認することができます。

4. 独自の通信ルール

独自のVPNプロトコルを開発している企業にとっては、オープンソースのフレームワークを使用することで、ネットワーク接続やデータ転送に関する異なる規制やルールを確立することが可能になります。この規格により、インターネットコミュニティがこのようなプライベートネットワーク上のリソースを評価することは難しく、不可能かもしれません。

まとめ

この記事では、さまざまなVPNプロトコルとその特徴や欠点について説明しました。これからVPNを利用する方は、このガイドで紹介した注意すべき点を参考にして、自分に合ったVPNプロトコルを選びましょう。