WireGuard・IPsec・OpenVPNの選定――鍵管理と運用性から決めるVPNプロトコルの設計判断

VPNプロトコルの選定は「とりあえず動けばよい」という判断では後から運用コストが膨らむ典型的な設計判断です。WireGuard・IPsec・OpenVPNの三方式は鍵管理の複雑さ・NATとの相性・障害復旧の挙動が根本的に異なります。接続要件・運用規模・認証基盤の有無を先に確定し、その条件にプロトコルを合わせるのが正しい選定の順序です。本稿では各設計判断の根拠と落とし穴を具体的な規模感とともに解説します。

接続要件とプロトコル特性の対応マトリクス

用途区分とプロトコルの親和性

VPNの用途は拠点間(Site-to-Site)・リモートアクセス・クラウド閉域接続の三つに分かれます。拠点間接続では安定したスループットと長期鍵管理コストが優先されるため、機器間で標準化されたIPsecが向いています。リモートアクセス用途ではNAT環境下のクライアント接続が前提となるため、UDPベースのWireGuardやTCPも選択できるOpenVPNが候補に入ります。クラウド接続ではAWS・Azure・GCPのマネージドゲートウェイがIKEv2/IPsecに固定されることが多く、この段階でプロトコルが事実上決まるケースもあるため、クラウド側の制約を最初に確認することが判断の効率を上げます。

スループット要件とプロトコルオーバーヘッドの関係

WireGuardはカーネル空間で動作しChaCha20-Poly1305に暗号アルゴリズムを絞り込むことで処理が軽量であり、10Gbpsオーダーの帯域が必要な構成でも適切なハードウェアであれば実用的な速度を維持できます。OpenVPNはユーザー空間で動作するためカーネルとの切り替えコストが発生し、同条件ではWireGuardの半分以下のスループットになることも珍しくありません。IPsecはAES-NI等のハードウェアオフロードに対応した機器では高スループットを維持できますが、ベンダー間の実装差(IKEv1/IKEv2・NAT-T有無)が相互接続の問題になることがあるため、異なるベンダー機器を接続する構成では事前の相互接続検証を設計フローに組み込む必要があります。

コンプライアンス要件による選定の制約

FIPS 140-2やISO 27001など厳格なコンプライアンス要件がある場合は、アルゴリズムの選択肢が制約されます。WireGuardはChaCha20-Poly1305とCurve25519に固定されており、AES-256-GCMを要求するポリシーには対応できないため、この段階で候補から外れる組織は一定数あります。IPsecはIKEv2でSuite-Bアルゴリズム(AES-GCM・SHA-256以上・ECDH P-256以上)を構成でき、OpenVPNもTLS 1.3・AES-256-GCMに対応するためコンプライアンス上の適用範囲は広いです。選定の出発点として、コンプライアンス要件を最初のフィルタとして使うことで候補を絞り込めます。

WireGuard・IPsec・OpenVPN三方式の比較表

主要パラメータの比較

項目 WireGuard IPsec(IKEv2) OpenVPN
プロトコル層 UDP(51820番) UDP 500/4500(IKE)+ESP/AH UDP または TCP(任意ポート)
実装空間 カーネル空間 カーネル空間(一部ユーザー空間) ユーザー空間
暗号アルゴリズム ChaCha20・Curve25519固定 選択可(AES-GCM等) 選択可(OpenSSL依存)
鍵管理 静的公開鍵の手動配布または追加ツール IKEv2で動的ネゴシエーション CA/証明書またはTLS-Auth鍵
NAT越え 標準対応(Keepalive設定が必要) NAT-T(RFC 3947)で対応 TCP利用で通過しやすい
設定の複雑さ 低(設定ファイルが簡潔) 高(ポリシー・SA設定が多岐) 中(CA管理が必要)
コンプライアンス対応 制約あり(AES非対応) 高(Suite-B対応) 高(TLS 1.3対応)
主な用途 小〜中規模・クラウド間・リモート 拠点間・キャリアグレード・クラウド リモートアクセス・複雑な認証要件

プロトコル選定のよくある落とし穴

「WireGuardは設定が簡単だから大規模でもそのまま使える」という判断は典型的な落とし穴です。WireGuardはピアごとに静的公開鍵を手動配布する設計であり、接続ノードが20〜30台を超えると鍵の配布・失効管理が急速に煩雑になります。解消にはNetBirdやHeadscaleのようなコントロールプレーン層の追加が必要となり、「設定が簡単」という前提が変わります。IPsecではIKEv1をいまだに使い続けるケースも一般的な技術負債として存在します。IKEv1はアグレッシブモードに既知の脆弱性があり設定の複雑さもIKEv2より高いため、新規構築ではIKEv2への統一が設計判断の基本です。

鍵管理の複雑さと運用規模の閾値判断

WireGuardのピア数と管理コストの臨界点

WireGuardにはプロトコル内部に鍵配布の仕組みがなく、各ピアの公開鍵を設定ファイルに手動記述します。10台以内の小規模構成では管理負荷は低く、設定ファイルの可読性の高さがメリットとして機能します。しかしフルメッシュ50台では設定エントリ数が2,450件に達し、手動運用は現実的ではありません。この閾値を超える場合はNetBirdやHeadscaleなどのコントロールプレーン層を前提とした設計に移行する判断が必要であり、設計段階でそのコストを見越しておくことが重要です。また、ピアの失効管理もプロトコルに内包されていないため、退職者や廃止ノードの公開鍵を全ピアの設定から削除する手順を運用設計に明示的に含める必要があります。

IPsecの証明書基盤と規模の閾値

IPsec(IKEv2)で証明書認証を使う場合はPKIの構築・維持が前提となります。拠点数が10以下では社内CAの構築・維持コストに対して得られる恩恵が小さく、PSK運用との比較で判断することが合理的です。一方で拠点数が50以上になると、証明書ベースの管理は個別PSK管理より運用負荷が下がります。証明書の有効期限を一括監視・自動更新する仕組みを整備すれば個別のPSK更新作業が不要になるためです。この規模の臨界点(おおむね拠点15〜20台前後)を見極めた上でPKI導入の判断をすることが設計上の重要な意思決定となります。

OpenVPNのCA管理と失効設計の注意点

OpenVPNはTLSを基盤とするため、CA証明書・サーバー証明書・クライアント証明書の三層を管理します。クライアント数が100台を超えると証明書の発行・失効・更新の管理が設計上の重点になります。特に失効管理は設計段階で軽視されやすく、OpenVPNがCRLファイルをサーバープロセスで読み込む方式のため、CRLを更新してもサーバーの再起動やリロードが必要なケースがあります。失効した証明書を持つクライアントが接続し続けるリスクを避けるため、CRLの有効期限・配布タイミング・サーバーへの反映手順を運用フローとして設計に組み込んでおく必要があります。

NAT越えとマルチパス構成の設計考慮点

WireGuardのNAT越えとホールパンチングの限界

WireGuardはUDPのみを使用します。固定IPを持つサーバーへクライアントが接続する構成では、PersistentKeepaliveを設定することでNATテーブルエントリを維持し、NAT越えの接続を安定させられます。ただしこれは「NATの維持」であり「NATの突破」ではありません。双方がNAT配下にある場合(モバイル回線同士のP2P接続など)はSTUNサーバーやコーディネーターノードを介する設計が別途必要です。TailscaleのDERPやNetBirdの中継機能はこの問題を解決する追加レイヤーとして機能しますが、追加コンポーネントの管理コストが発生する点を設計段階で考慮しておく必要があります。

IPsecのNAT-Tとファイアウォール通過制約

IPsecはESP(Encapsulating Security Payload)がレイヤー3プロトコルのため、NATを通過させるにはNAT-TでESPをUDP 4500番にカプセル化します。多くの現代的なファイアウォールはNAT-Tを透過しますが、一部の企業環境ではUDP 500/4500の通過が制限されているケースがあります。深いパケットインスペクション(DPI)でVPNプロトコルを遮断するネットワークを通過する必要がある場合は、443番ポートのTCPを使えるOpenVPNの方が通過しやすいです。この制約はプロトコル選定の段階でネットワーク環境を事前に確認しておくべき設計判断のポイントです。

マルチパスとフェイルオーバー経路の設計

可用性要件が高い拠点間接続では、バックアップ回線への切り替え設計がVPNプロトコル選定と連動します。IPsecはDPD(Dead Peer Detection)でピアの死活を監視し、BGP・OSPFと組み合わせることでダイナミックルーティングによるフェイルオーバー自動化に優れています。WireGuardはフルメッシュで張りルーティングで経路を切り替える設計は可能ですが、標準プロトコルでのダイナミックルーティング統合はIPsecほど成熟していません。フェイルオーバーの自動化を設計要件に含める場合は、IPsec+ダイナミックルーティングの組み合わせを優先候補として評価することが合理的です。

クラウドマネージドVPNとOSSの使い分け境界

マネージドVPNが有利な条件

AWS Site-to-Site VPN・Azure VPN Gateway・GCP Cloud VPNなどのマネージドVPNは、ゲートウェイの冗長性・パッチ適用・スケーリングがクラウド側で管理されます。HA構成を自前で維持するコストを省けるため、クラウドとオンプレミスを接続するシンプルな拠点間接続では積極的に選択肢に入れるべきです。プロトコルはIKEv2/IPsecが標準でBGPにも対応していますが、スループット上限・接続トンネル数・コスト構造はサービスごとに異なります。スループット要件と接続拠点数を先に見積もった上でマネージドVPNで賄えるかを判断することが重要です。

OSSが有利な条件と使い分けの境界線

カスタム認証フロー(LDAP・RADIUS・MFAとの連携)、エンドポイントごとの細かなルーティング制御、マルチクラウド・クロスリージョンの複雑なメッシュトポロジーなどの要件ではOSSのセルフホストが柔軟性の面で優位になります。ただしゲートウェイノードの冗長化・パッチ管理・監視設計は自前で担う必要があり、運用工数の増加とのトレードオフを明確にして判断します。一般的な使い分けの基本線として、クラウドネイティブな拠点間接続はマネージドVPN、リモートアクセスや複雑なメッシュ構成はOSSという切り分けが設計上の出発点となります。二つを混在させる場合は、役割・管理責任・障害対応手順を設計段階で文書化しておくことが運用上の安定性につながります。

証明書認証とPSKの選定基準

PSKの適用範囲と運用上の限界

PSK(Pre-Shared Key・事前共有鍵)は設定が簡便なため、小規模・検証環境・短期接続では有効な選択肢です。しかし拠点ごとにPSKを変える場合は管理コストが増大し、共通PSKを使い回すと一つの漏洩が全拠点に影響します。一般的なつまずきとして「最初に設定したPSKを長期間変更しない」というケースがあります。PSKのローテーション手順・周期・担当者をあらかじめ運用設計に組み込まないと、変更のたびに全拠点の設定変更が発生して対応が後手に回ります。本番環境での長期運用を想定する場合は、後述の証明書認証への移行計画を設計段階から考慮しておくことが望ましいです。

証明書認証への移行を判断するチェックリスト

以下のいずれかに該当する場合は、PSKから証明書認証(PKI)への移行を設計に組み込む判断が必要です。

  • 接続拠点数またはクライアントデバイス数が15〜20台以上になる見込みがある
  • 退職者や廃止デバイスのアクセス失効を個別かつ速やかに行う必要がある
  • FIPS・PCI DSS・ISO 27001などのコンプライアンス監査でVPN認証の証跡を求められる
  • 既存のActive Directory CSやHashiCorp Vaultなど証明書発行基盤がすでに組織内に存在する
  • PSKのローテーション運用を設計・体制ともに継続して維持できる見込みがない

証明書基盤を新規構築する場合は、ルートCAのオフライン管理・中間CAの分離・証明書テンプレートの標準化を設計として固めた上で実装に進むことが重要です。

EAP認証との組み合わせ設計

IPsec(IKEv2)ではEAP(Extensible Authentication Protocol)を使ってRADIUSサーバーやLDAPと連携したユーザー認証を実装できます。証明書によるサーバー認証+EAPによるユーザー認証を組み合わせる構成はリモートアクセスVPNで広く使われるパターンです。証明書の管理対象がサーバー側のみとなるためクライアント側の管理負荷を下げられ、ユーザー認証を既存のディレクトリサービスに委ねられます。多要素認証(MFA)のトークンをEAPと組み合わせる場合はRADIUS側の設計が重要になります。OpenVPNもプラグイン機構でRADIUS連携が可能ですが、IPsec+IKEv2+EAPの組み合わせは標準サポートが広くベンダー選定の柔軟性が高いです。

障害時の接続断から復旧までの設計

DPDとセッション再確立の挙動差

VPN障害で最初に影響が出るのは「接続断の検知速度」と「再確立の速さ」です。IPsecのDPD(Dead Peer Detection、RFC 3706)は定期的にパケットを送受信してピアの死活を検出し、検出後にSAを削除してIKEv2の再ネゴシエーションを開始します。DPD間隔を短くすれば検知は速くなりますが、不安定回線ではフォールスポジティブが増えるトレードオフがあります。WireGuardはプロトコル自体にDPD相当の仕組みを持たず、PersistentKeepaliveで定期パケットを維持できますが明示的な接続断の通知がないため、アプリケーション側から見た接続断検知が遅延しやすいという設計上の注意点があります。

Rekeyと長期セッションの安定性設計

長期間接続を維持するVPNでは、鍵の寿命と再鍵交換(Rekey)のタイミング設計が安定性に影響します。IPsecではSA(Security Association)の寿命を時間・バイト量の両方で設定でき、期限が近づくとIKEv2が自動で新しいSAを事前にネゴシエーションするため通信断が発生しにくい設計です。WireGuardは180秒ごとにハンドシェイクを再実行するPerfect Forward Secrecyを自動で行いますが、ハンドシェイクが失敗した場合はそのセッションが断になります。モバイル回線など不安定な環境では事前にハンドシェイクの失敗率を評価しておく必要があります。

障害切り分けのための設計観点

障害発生時の切り分けを速やかに行うには、設計段階でログ設計・監視項目・アラート閾値を決めておく必要があります。IPsecではIKEネゴシエーションのログ・SA確立状態・DPD検知ログが主要な確認ポイントです。OpenVPNはプロセスログが詳細でTLSハンドシェイクの失敗・証明書エラー・ルーティング問題を分離して確認しやすい特性があります。WireGuardはデバッグ出力が最小限であり、切り分けにはカーネルログとパケットキャプチャへの依存度が高まります。運用チームのスキルセットや既存監視インフラとの親和性も、プロトコル選定の実務的な判断材料として設計段階で評価に含めておくことが、継続的な運用品質の維持につながります。

▶ 手を動かして本番まで到達する

その設計判断を、RHEL10の本番環境で手を動かして固めませんか

ここまでの設計判断は、読めば腹に落ちます。ですが「自分の手で本番まで通しきる自信」は、それとは別の話になります。

最大6名の少人数で、構築実務者の到達点まで引き上げます。座学で終わらせず、本番相当の環境で判断を検証する2日間です。

VPNプロトコル選定と鍵管理設計を実装で確かめる上級Linuxハンズオンへ →

Linuxセミナー上級編(RHEL10)|最大6名の少人数ハンズオン