本日、Cloudflare OneへのオンランプとしてIPsecをサポートすることを発表しました。お客様としては、Cloudflareのネットワークへのトラフィックを取得するために、どのような方法を使うこともできると思います。ほぼすべてのベンダーがサポートし、すべてのトラフィックをレイヤー全体で暗号化するため、ネットワークレイヤーで当社に接続するための方法としてIPsecが選択されているとお聞きしました。そこで、当社はIPsecのサポートを構築しました。IPsecの実装が従来のIPsec接続よりも高速で使いやすいこと、そしてCloudflare Oneスイートと深く統合し、すべてのトラフィックに統一されたセキュリティ、パフォーマンス、信頼性を提供することについて、ぜひご覧になってください。
インターネットの企業ネットワークとしての活用
Cloudflare Oneを使用して、お客様は、支店、データセンター、クラウドプロパティ、ユーザーデバイスなど、あらゆるトラフィックの送信元や送信先を当社のネットワークに接続することができます。トラフィックは最も近いCloudflareの拠点にルーティングされ、そこでセキュリティポリシーが適用された後、最適化されたルートでお客様のプライベートネットワーク内またはインターネット上の送信先に送られます。アプリケーションレベルで機密性の高いトラフィックを暗号化することは良いことですが、マルチプロトコルラベルスイッチング(MPLS)のようなプライベート接続から移行するお客様にとっては、しばしば現実的ではありません。従来のファイル転送や暗号化せずにMPLS回線で実行するその他のアプリケーションを使用し、これらの回線が「プライベート」であるという事実をセキュリティのために信頼している多くのお客様とお話をしてきました。このようなトラフィックをインターネット上に送信するためには、お客様はそのすべてに包括的な暗号化レイヤーを設ける必要があり、従来、IPsecトンネルがこれを達成する簡易的な方法です。
従来のIPsecの実装
IPsecは1995年に誕生した技術であり、多くのハードウェアおよびソフトウェアプラットフォームに広く実装されています。多くの企業が、インターネット上で企業のトラフィックを安全に転送するためにIPsec VPNを採用しています。これらのVPNは、ハブアンドスポーク、またはメッシュの2つのメインアーキテクチャのいずれかを持つ傾向があります。
ハブアンドスポークモデルでは、各「スポーク」ノードがコア「ハブ」(通常は本社またはデータセンターの場所)に戻るIPsecトンネルを確立します。スポーク間のトラフィックは、ルーティングと(オンプレミスファイアウォールなどによる)セキュリティポリシーの適用を目的としてハブを経由して流れます。このアーキテクチャは、各ノードが1つのトンネルを維持するだけで他の拠点に接続できるため単純ですが、パフォーマンスが大きく低下する可能性があります。たとえば、インドとシンガポールに2つの「スポーク」があり、米国に「ハブ」があるグローバルネットワークを想像してください。トラフィックは、送信先に到達するために、何千マイルも往復する必要があります。
メッシュモデルでは、すべてのノードが他のすべてのノードと専用のIPsecトンネルで接続されています。これは、トラフィックがより直接的なパスを取ることができるため、パフォーマンスが向上しますが、実際には、たとえ少数の場所でも追加されると、トンネルが管理不可能な数になることを意味しています。
IPsecについて話したことのあるお客様は、包括的な暗号化レイヤーと幅広いベンダーサポートのためにIPsecが必要だと分かっていますが、既存のアーキテクチャモデルに問題があるため、特に_期待_しているわけではありませんでした。当社は、お客様がCloudflareで次世代ネットワークを構築することを楽しみにできるよう、これらの問題を過去のものとし、より使いやすいものを開発したいと思いました。では、どのようにしてIPsecを90年代から脱却させるでしょうか。グローバルなエニーキャストネットワークで提供することで、お客様は当社と1つのIPsecトンネルを確立し、250以上の場所への自動接続を得ることができます。これは概念的にはハブアンドスポークモデルに似ていますが、「ハブ」はいたるところに設定でき、非常に高速で、管理も簡単です。
では、実際にIPsecはどのように機能するのでしょうか。
IPsecは1995年に、IPパケットの認証、完全性、および機密性を提供するために設計されました。その方法の1つは、2つのホスト間でトンネルを作成し、IPパケットを暗号化し、暗号化されたパケットに新しいIPヘッダーを追加することです。これを実現するために、IPsec には、ユーザースペースのインターネット鍵交換(IKE)デーモンとカーネルスペースのIPsecスタックという、一緒に動作する2つのコンポーネントがあります。IKEはIPsecのためのセキュリティアソシエーションズ(SA)を作成するプロトコルです。SAは、IPsec トンネルを確立するために必要な、認証や暗号化のためのパラメーターのような、すべてのセキュリティパラメーターのコレクションです。
新しいIPsecトンネルをセットアップする必要がある場合、1つのIKEデーモンが別のIKEデーモンとのセッションを開始し、SAを作成します。設定、キーネゴシエーション、およびキー生成のすべての複雑な処理は、ユーザースペースにある2つのIKEデーモン間の少量のパケットで安全に行われます。IKE デーモンがセッションを開始すると、カーネルスペースのIPsecスタックにその素晴らしくきちんとしたSAを渡します。これにより、IPsecスタックは暗号化と復号化のための正しいパケットを傍受するために必要なすべての情報を獲得します。
strongSwan、Libreswan、Openswanなど、オープンソースのIKEデーモンがたくさんあり、IPsecの実装に使用することを検討しました。これらの「スワン」はすべて、IPsecスタックの設定とIKEプロトコルを緊密に結びつけています。これは、ポイントツーポイントトンネルを確立するのに適しています。1つの「スワン」をインストールするだけで、IKEを話し、暗号化されたトンネルを設定することができます。しかし、当社はCloudflareのグローバルなエニーキャストエッジ全体を活用した次世代ネットワークを構築しています。では、お客様がCloudflareに1つのトンネルをセットアップし、その上でデータ交換が可能なエッジサーバを1つ1つ装備できるようにするにはどうすればいいのでしょうか。
エニーキャストIPsec:次世代ネットワークのための実装
エニーキャストIPsecの方法における根本的な問題は、SAをすべてのCloudflareエッジサーバー上のカーネルスペースのIPsecスタックに渡す必要があるが、SAはたった1つのサーバー、つまりお客様のIKEデーモンが接続するIKEデーモンを実行しているサーバーにしか作成されないということです。どうすればこの問題を解決できるでしょうか。まず最初に、すべてのサーバーはそのSAを作成できる必要があります。
現在、すべてのCloudflareサーバーでIKEデーモンが動作しているため、お客様は世界のどこにいても高速で信頼性の高い接続でトンネルを開始することができます。既存の「スワン」の1つを使用することも検討しましたが、IKEとIPsecスタックの緊密な結合により、データプレーンの設定からSAを切り離すことが困難であることがわかりました。当社はSAを完全に分離し、それを作成したサーバーから当社のエッジ上の他のすべてのサーバーにきちんと共有できるようにする必要がありました。当然、当社はそれを実現するために独自の「スワン」を構築しました。
SAを世界中に届けるために、当社は昔ながらの手法に新しい風を吹き込みました。Cloudflare Tunnelsでは、お客様のcloudflaredトンネルプロセスが、近くにあるいくつかのCloudflareエッジサーバーへの接続を作成します。しかし、そのトンネルに向けられたトラフィックは、_どの_エッジサーバーにも到着する可能性があり、トンネルに接続されたエッジサーバーにトラフィックをプロキシする方法を知っておく必要があります。そこで当社は、エッジサーバーがそのCloudflareトンネル接続に関する情報を他のすべてのエッジサーバーに迅速に配信できるような技術を構築しました。
基本的に、SA配信の問題は似ており、お客様のIKEデーモンが1つのCloudflareエッジサーバーのIKEデーモンに接続し、その接続に関する情報を他のすべてのエッジサーバーに配信する必要があります。そこで、Cloudflareトンネル技術をアップグレードして汎用化し、エニーキャストIPsecのサポートの一環としてSAの配信に利用しています。SAが作成されると、数秒以内にすべてのCloudflareエッジサーバーに配信され、ストリーミングプロトコルがカーネルスペースIPsecスタックに設定を適用します。CloudflareのエニーキャストIPsecは、Cloudflareトンネルで構築したのと同じ信頼性と回復力の恩恵を受け、お客様のネットワークへの拡張性豊かで順応性のあるIPsecトンネルに当社のネットワークを変えてくれます。
IPsecでオンランプ、Cloudflare Oneのすべてにアクセス可能
当社は、お客様が重視する原則を第一に考え、既存のグローバルシステムアーキテクチャの上に、Cloudflare OneへのオンランプとしてIPsecを構築しました。デプロイメントの容易さを重視するお客様には、Cloudflare One上の仮想ネットワーク全体に1つのIPsecトンネルで接続できるようにしました。パフォーマンスを重視するお客様には、お客様のIPsecトンネルをCloudflareのすべての場所に接続する技術を構築し、ハブアンドスポークのパフォーマンス低下をなくしました。送信元に関係なくすべてのトラフィックにセキュリティポリシーを適用することを重視するお客様には、Magic Transit、Magic Firewall、Zero Trustなどを含むCloudflare Oneスイート全体とIPsecを統合しました。
IPsecはCloudflare Oneのお客様を対象にした早期アクセス版です。ご興味のある方は、今すぐアカウントチームまでご連絡ください。