ハイブリットキーを用いた耐量子拠点間VPN

量子コンピュータの実現と普及に伴い、既存暗号技術、特に公開鍵暗号(RSA、ECDSA、ECDHなど)が解読されるリスクが指摘されています。この脅威はすでに存在し、先に暗号化されたデータを収集し、将来量子コンピュータが実用化された後に解読する「HNDL(Harvest Now Decrypt Later)/ハーベスト攻撃」などと呼ばれます。こういった脅威に対応するために金融機関を中心に耐量子計算機暗号(PQC)への移行の検討が進んでいます。

Palo Alto NetworksのNGFWでは2025年7月現在、拠点間VPNにおいて耐量子VPN(PQ VPN)ソリューションを2種類利用することが可能です。RFC 8784標準の耐量子事前共有鍵(PQ PPK)を用いたPQ VPNとRFC9242/9370に基づきNISTで標準された(FIPS標準)鍵交換アルゴリズムを含む複数の耐量子暗号アルゴリズムを使用したPQ VPNを提供しています。

今回、後者のPQ VPNを紹介します。なお、既存の鍵交換アルゴリズムDHなどと組み合わせて使用することを推奨されており、ハイブリットキーでの実装を推奨されています。

前提

RFC9242/9370に基づくPQ VPNを利用するための前提条件は以下です。

  • PAN-OS:11.2以上
  • ライセンス:不要

既存NGFWでもPAN-OSをアップグレードするだけで簡単に利用可能です。

構成

今回の検証構成です。

設定

トンネル設定

  1. a)[NETWORK] > b)[インターフェース] からc)[トンネル]タブをクリックし、d)「追加」をクリックします。
  2. a)インターフェイス名(tunnnel.xx)、b)仮想ルーター、c)セキュリティゾーンを設定し、「OK」をクリックします。
    • 仮想ルーター、セキュリティゾーンの詳細ついてはネットワーク設定等を参照し、必要に応じて作成ください。ここでは割愛します。

IKEゲートウェイ設定

  1. a)[NETWORK] > b)[ネットワーク プロファイル] > c)[IKEゲートウェイ]タブをクリックし、d)「追加」をクリックします。
  2. a)[全般]タブでは以下の設定をします。(記載がない項目はデフォルトのままにしています)
設定項目PANW-VM01PANW-PA01
名前PANW-PA01_IKE-GW(任意)PANW-VM01_IKE-GW(任意)
バージョン1IKEv2 only modeIKEv2 only mode
インターフェースethernet1/1ethernet1/8
ピアアドレスPANW-PA01のグローバルIPPANW-VM01のグローバルIP
認証事前共有鍵事前共有鍵
事前共有鍵【PANW-PA01と共通の文字列】【PANW-VM01と共通の文字列】
ローカルID:IPアドレスPANW-VM01のグローバルIPPANW-PA01のグローバルIP
ピアID:IPアドレスPANW-PA01のグローバルIPPANW-VM01のグローバルIP
  1. IKEv2 only mode もしくは IKEv2 preferred modeを選択できます。
    ・IKEv2 only mode:対向機器がIKEv2でない場合、接続ができません。
    ・IKEv2 preferred mode:対向機器がIKEv2でない場合、IKEv1にフォールバックします。(必然的にPQ VPNではなくなります) ↩︎
  1. PANNW-VM01はNATトラバーサル有効、PANW-PA01はパッシブモードにしています。
    • PANNW-VM01はNATトラバーサル有効、PANW-PA01はパッシブモードにしています。
設定項目PANW-VM01PANW-PA01
パッシブモードを有効にするチェック
NAT トラバーサルを有効にするチェック
  1. IKEv2セクションの[全般]タブで以下の設定をします。
    • IKE暗号プロファイル:ここではdefaultのままにしています。後で設定します。
    • IKEv2 Fragmentation:チェックを入れる
      • PQC KEM を使用する場合は、キー サイズとデータ ペイロードが大きいため、IKEv2 フラグメンテーションを有効にする必要があります。
  2. IKEv2セクションの[PQ KEM]で以下の設定をします。
    • Post-Quantum鍵交換を有効にする:チェックを入れる
    • 脆弱な暗号が使用されている場合はIKEv2をブロック:任意
      • このオプションを有効にすると、IKE暗号プロファイルで脆弱なKEMが使用されていることがファイアウォールによって検出されると、すべての新しいIKEv2ピアリングがブロックされます。それ以前に確立された既存のVPNトンネルは継続できます。
  3. 「OK」をクリックします。

IKE暗号プロファイル設定

  1. a)[NETWORK] > b)[ネットワーク プロファイル] > c)[IKE暗号]タブをクリックし、d)「追加」をクリックします。
  2. a)[全般]タブでは以下の設定をします。※名前以外は対向機器と一致させる必要があります。
    • 名前:PQ-VPN01_IKE(任意)
    • DHグループ:group21
    • 暗号化:aes-256-gcm
    • 認証:non-auth
      • IKEv2の場合、暗号化タイプAES-GCMを使用するには認証はnon-authに設定する必要があります。
    • タイマー > キーの有効時間:8 時間
    • タイマー > IKEv2 多重認証(Authentication Multiple):1
      • 特定の間隔でキーを再生成するには1以上にする必要があります。
  3. b)[詳細オプション]タブで耐量子鍵交換アルゴリズムの設定をします。
    • 最大7つの追加鍵交換ラウンドを設定することが可能で、Crypto Agilityの観点で複数のアルゴリズムを使用することが推奨されています。ただし、ラウンドを追加するとネゴシエーションのオーバーヘッドが増加し、IKEv2のパケットサイズが大きくなります。
    • 今回は以下の設定をしています。※対向機器と一致させる必要があります。
      • ラウンド1:kyber-1024
      • ラウンド2:bike-L5
      • ラウンド3:hqc-256
  4. 「OK」をクリックします。
  5. a)[NETWORK] > b)[ネットワーク プロファイル] > c)[IKEゲートウェイ]タブをクリックし、作成したIKEゲートウェイプロファイルをクリックします。            
  6. a)[詳細オプション]タブ > IKEv2セクションの[全般]タブのIKE暗号プロファイルの設定を「default」から今作成したIKE暗号プロファイルに変更し、「OK」をクリックします。

IPSecトンネル設定

  1. a)[NETWORK] > b)[IPSecトンネル] をクリックし、c)「追加」をクリックします。
  2. a)[全般]タブで以下の設定をします。
設定項目PANW-VM01PANW-PA01
名前PANW-PA01_tunnel(任意)PANW-VM01_tunnel(任意)
トンネルインターフェースtunnel.11tunnel.11
IKEゲートウェイPANW-PA01_IKE-GWPANW-VM01_IKE-GW
IPSec暗号プロファイルdefault(後で変更します)default(後で変更します)
  1. 「OK」をクリックします。
  2. この段階では以下のステータスになっています。

IPSec暗号プロファイル設定

  1. a)[NETWORK] > b)[ネットワーク プロファイル] > c)[IPSec暗号]タブをクリックし、d)「追加」をクリックします。
  2. a)[全般]タブでは今回以下の設定をします。※名前以外は対向機器と一致させる必要があります。
    • 名前:PQ-VPN01_IPSec(任意)
    • IPSec プロトコル:ESP
    • DHグループ:group20
    • 暗号化:aes-256-gcm
    • 認証:sha512
    • ライフタイム:1 時間        
  3. b)「詳細オプション」タブで耐量子鍵交換アルゴリズムの設定をします。
    • IKE暗号プロファイルと同様最大7つの追加鍵交換ラウンドを設定することが可能です。ただし、ラウンドを追加するとネゴシエーションのオーバーヘッドが増加し、IPSec鍵再生成のパケットサイズが大きくなります。
    • 今回は以下の設定をしています。※対向機器と一致させる必要があります。
      • ラウンド1:kyber-768
      • ラウンド2:bike-L3
      • ラウンド3:frodokem-640-aes
  4. 「OK」をクリックします。
  5. a)[NETWORK] > b)[IPSecトンネル] をクリックし、作成したIKEゲートウェイプロファイルをクリックします。
  6. [IPSec暗号プロファイル]を「default」から今作成したIPSec暗号プロファイルに変更し、「OK」をクリックします。

ルーティング設定

最後にトンネル向けのルーティングを追加します。必要に応じてセキュリティポリシーの設定をしてください。本稿では割愛します。

  1. a)[NETWORK] > b)[仮想ルーター] をクリックし、対象の仮想ルーターをクリックします。
  2. a)[スタティックルート] > b) [IPv4]をクリックし、c)「追加」をクリックします。
  3. それぞれの宛先ネットワークのスタティックルートを追加し「OK」をクリックします。
設定項目PANW-VM01PANW-PA01
名前PANW-testPA01_NW(任意)PANW-testVM01_NW(任意)
宛先192.168.10.0/24172.20.1.0/24
インターフェースtunnel.11tunnel.11
ネクスト ホップNoneNone
  1. 「OK」をクリックします。

全ての設定が終わったのでコミットします。

確認

  1. a)[NETWORK] > b)[IPSecトンネル] をクリックし、「IKE情報」、「トンネル情報」のステータスが緑であることを確認します。
    • 赤の状態の場合、CLIからtestコマンドを実行し、トリガーとします。
      • test vpn ike-sa
      • test vpn ipsec-sa
  2. CLIでは以下のコマンドで耐量子鍵交換アルゴリズムが使用されていることを確認できます。
    • show vpn ike-sa
    • show vpn ipsec-sa

参考資料

コメント欄 質問や感想、追加してほしい記事のリクエストをお待ちしてます!

タイトルとURLをコピーしました