【Paloalto】サイト間 IPSec VPN設定 動作確認(Azure VPN Gateway)PANOS 10.1

この記事では、Palo Alto Networks のファイアウォール(PAN-OS 10.1)と Microsoft Azure の VPN Gateway の間で、サイト間 IPsec VPN を構築して動作を確認します。Azure 側の作成から、Palo Alto 側の設定、接続確認、暗号アルゴリズムの変更、運用で使うコマンドまでを順に説明します。

この記事でわかること
  1. Azure 側でリソースグループ、仮想ネットワーク、VPN Gateway、接続を作る
  2. Palo Alto 側でトンネルインタフェース、IKE ゲートウェイ、IPSec トンネル、ルートを設定する
  3. トンネルの確立と通信を確認する
  4. 暗号化・認証アルゴリズムと DH グループを変更する
  5. CLI で IKE SA と IPsec SA を確認する

検証構成

ネットワーク構成は下の図のとおりです。Palo Alto は NAT 環境で使っているため、インターネット側のローカルアドレス(192.168.20.120)は、パブリック IP アドレス(54.249.146.40)に変換されます。Azure 側の VPN Gateway のパブリック IP アドレスは 20.89.59.186 です。

AzureIPsec VPN(IKEv2)InternetVPNGateway192.168.10.0/24PCPalo AltoEth2Eth1192.168.20.120⇕ NAT54.249.146.4020.89.59.186172.16.1.0/24172.16.1.4
図1 検証構成

Palo Alto の LAN 側(192.168.10.0/24)と、Azure の仮想ネットワーク内のサブネット(172.16.1.0/24)の間を IPsec VPN でつなぎます。

Microsoft Azure VPN Gatewayの設定

Azure VPN Gateway を使うと、Azure の仮想ネットワークに、リモートユーザーや別の拠点を VPN で接続できます。サイト間 VPN では、次の図のリソースを作ります。

リソースグループ:PA-VPN-RG仮想ネットワーク:PA-VPN-VNet(172.16.0.0/16)GatewaySubnet(172.16.0.0/27)VPN-Subnet(172.16.1.0/24)VPNGatewayVPN_GW_PA20.89.59.186サーバ 172.16.1.4接続PA-VPN-CONNECTION事前共有鍵(PSK)ローカルネットワークゲートウェイPaloalto54.249.146.40192.168.10.0/24
図2 Azure 側で作るリソースと関係
リソース役割
仮想ネットワーク(VNet)Azure 側のネットワーク。VPN Gateway を置く GatewaySubnet と、サーバを置くサブネットを作る
仮想ネットワークゲートウェイAzure 側の VPN 装置(VPN Gateway)。パブリック IP アドレスを持つ
ローカルネットワークゲートウェイ対向の Palo Alto を表す設定。Palo Alto のパブリック IP アドレスと、Palo Alto 側のアドレス空間を登録する
接続仮想ネットワークゲートウェイとローカルネットワークゲートウェイを結び付け、事前共有鍵や IKE の設定を決める
画面イメージについて

この記事の画面は、実際の画面ではなく、検証時の画面から設定する項目(見るポイント)を抜き出して描いたイメージです。バージョンによって、項目の並びや表記は変わります。

リソースグループの設定

最初に、リソースグループを作ります。リソースグループは、Azure のリソースをまとめて管理するための入れ物です。Azure ポータルにログインし、リソースグループ ›› 作成 を開きます。

Azure ポータル画面イメージ
リソースグループ ›› リソースグループを作成します
基本
サブスクリプションAzure サブスクリプション 1
1リソースグループPA-VPN-RG
2リージョン(Asia Pacific) Japan East
3確認および作成< 前へ次: タグ >
図3 リソースグループの作成(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1リソースグループ任意の名前。今回は PA-VPN-RG
2リージョン(Asia Pacific) Japan East
3確認および作成クリックし、「検証に成功しました」と表示されたら「作成」をクリック

仮想ネットワーク(VNet)の設定

次に、仮想ネットワークを作ります。この仮想ネットワークに、VPN Gateway や Azure 側のサーバを置きます。仮想ネットワーク ›› 作成 を開き、「基本」タブと「IP アドレス」タブを設定します。

「IP アドレス」タブでは、既定で入っている IPv4 アドレス空間があれば削除してから、172.16.0.0/16 のアドレス空間を作り、「サブネットの追加」でサーバ用のサブネットを追加します。

Azure ポータル画面イメージ
仮想ネットワーク ›› 仮想ネットワークの作成
基本
サブスクリプションAzure サブスクリプション 1
1リソースグループPA-VPN-RG
2仮想ネットワーク名PA-VPN-VNet
3地域(Asia Pacific) Japan East
IP アドレス
4IPv4 アドレス空間172.16.0.0 /16 (65,536 個のアドレス)
サブネットの追加
サブネットの目的Default
5名前VPN-Subnet
IPv4 アドレスの範囲172.16.0.0/16
6開始アドレス172.16.1.0
サイズ/24 (256 個のアドレス)
7追加キャンセル
図4 仮想ネットワークの作成(実際の画面ではなく、「基本」「IP アドレス」タブと「サブネットの追加」画面の設定項目をまとめたイメージです)
No.項目設定内容
1リソースグループSTEP 1 で作った PA-VPN-RG
2仮想ネットワーク名任意の名前。今回は PA-VPN-VNet
3地域(Asia Pacific) Japan East
4IPv4 アドレス空間172.16.0.0/16
5名前(サブネット)任意の名前。今回は VPN-Subnet
6開始アドレス/サイズ172.16.1.0//24 (256 個のアドレス)
7追加クリック後、「確認+作成」→「作成」をクリック

ゲートウェイサブネットの設定

VPN Gateway を置くためのゲートウェイサブネットを作ります。作成した仮想ネットワークで サブネット ›› +ゲートウェイサブネット を開き、「サブネットアドレス範囲」を 172.16.0.0/27 にして「保存」をクリックします。名前は GatewaySubnet が自動で入ります。

Azure ポータル画面イメージ
PA-VPN-VNet ›› サブネット ›› +ゲートウェイサブネット
名前GatewaySubnet
1サブネットアドレス範囲172.16.0.0/27 172.16.0.0 – 172.16.0.31 (27 + 5 個の Azure 予約アドレス)
⋮ (中略)
2保存キャンセル
登録後のサブネット一覧
名前IPv4IPv6使用可能な IP
VPN-Subnet172.16.1.0/24–251
3GatewaySubnet172.16.0.0/27–動的使用に依存する可用性
図5 ゲートウェイサブネットの作成と登録結果(実際の画面ではなく、設定項目のポイントを示したイメージです)
補足

ゲートウェイサブネットの名前は GatewaySubnet でなければなりません。Microsoft のドキュメントでは、サイズは /27 以上(/27、/26 など)にすることが推奨されています。ゲートウェイサブネットには、VPN Gateway 以外の VM などを置きません。

ローカルネットワークゲートウェイの設定

Palo Alto 側の WAN アドレスとローカルのアドレス空間を登録するため、ローカルネットワークゲートウェイを作ります。ローカルネットワークゲートウェイ ›› 作成 を開きます。

Azure ポータル画面イメージ
ローカルネットワークゲートウェイ ›› 作成(基本)
サブスクリプションAzure サブスクリプション 1
1リソースグループPA-VPN-RG
地域Japan East
2名前Paloalto
3エンドポイント◉ IP アドレス○ FQDN
4IP アドレス54.249.146.40
5アドレス空間192.168.10.0/24
6確認および作成前へ次: 詳細設定 >
図6 ローカルネットワークゲートウェイの作成(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1リソースグループPA-VPN-RG
2名前任意の名前。今回は Paloalto
3エンドポイントIP アドレス
4IP アドレスPalo Alto 側のパブリック IP アドレス 54.249.146.40。NAT 環境なので、Palo Alto のインタフェースのアドレス(192.168.20.120)ではなく、変換後のアドレスを指定する
5アドレス空間Palo Alto 側のローカルのアドレス空間 192.168.10.0/24。Azure はこの宛先への通信を VPN に送る
6確認および作成クリックし、「検証に成功しました」と表示されたら「作成」をクリック

仮想ネットワークゲートウェイの設定

このステップで、実際に VPN Gateway を作ります。仮想ネットワークゲートウェイ ›› 作成 を開きます。

Azure ポータル画面イメージ
仮想ネットワークゲートウェイ ›› 作成(基本)
インスタンスの詳細
リソースグループPA-VPN-RG(仮想ネットワークのリソースグループから派生)
1名前VPN_GW_PA
2地域Japan East
3ゲートウェイの種類◉ VPN○ ExpressRoute
4SKUVpnGw1
世代Generation1
5仮想ネットワークPA-VPN-VNet
サブネットGatewaySubnet (172.16.0.0/27)
パブリック IP アドレス
6パブリック IP アドレス◉ 新規作成○ 既存のものを使用
パブリック IP アドレス名Azure_Public_IP
パブリック IP アドレスの SKUStandard
7アクティブ/アクティブ モードの有効化○ 有効◉ 無効
BGP の構成○ 有効◉ 無効
8確認および作成前へ次: タグ >
図7 仮想ネットワークゲートウェイの作成(実際の画面ではなく、2つの画面に分かれていた設定項目をまとめたイメージです)
No.項目設定内容
1名前任意の名前。今回は VPN_GW_PA
2地域Japan East(仮想ネットワークと同じリージョン)
3ゲートウェイの種類VPN
4SKUゲートウェイの種類(性能や作れるトンネル数などが異なる)。検証時は VpnGw1 を選択
5仮想ネットワーク/サブネットPA-VPN-VNet を選ぶと、ゲートウェイサブネット(/27)が自動で選ばれる
6パブリック IP アドレス既存のものがないので「新規作成」。名前は任意で、今回は Azure_Public_IP
7アクティブ/アクティブ モードの有効化無効
8確認および作成クリックし、「検証に成功しました」と表示されたら「作成」をクリック
SKU について

検証時は VpnGw1 を選びましたが、可用性ゾーンに対応しない VpnGw1〜5(名前に AZ が付かない SKU)は、2025年11月1日から新規作成ができなくなり、2026年9月30日が廃止日とされています(既存のゲートウェイは AZ 付きの SKU に移行されます)。これから作る場合は、VpnGw1AZ など名前に AZ が付く SKU を選びます。

VPN Gateway の作成には時間がかかります。今回の検証では 30〜40 分ほどかかりました(Microsoft のドキュメントでは、SKU によって 45 分以上かかることがあるとされています)。作成後、仮想ネットワークゲートウェイの概要で、割り当てられたパブリック IP アドレスを確認します。

Azure ポータル画面イメージ
仮想ネットワークゲートウェイ ›› VPN_GW_PA(概要)
SKUVpnGw1
ゲートウェイの種類VPN
VPN の種類ルート ベース
仮想ネットワークPA-VPN-VNet/GatewaySubnet
1パブリック IP アドレス20.89.59.186 (Azure_Public_IP)
図8 作成した仮想ネットワークゲートウェイの概要(実際の画面ではなく、表示のポイントを示したイメージです)

このパブリック IP アドレス(20.89.59.186)を、Palo Alto 側の IKE ゲートウェイでピアアドレスとして指定します。VPN の種類が「ルート ベース」になっている点も確認しておきます。

接続の追加

VPN Gateway とローカルネットワークゲートウェイの間の接続を作ります。仮想ネットワークゲートウェイの画面で 接続 ›› 追加 を開き、「基本」タブを設定してから「次: 設定」で「設定」タブに進みます。

Azure ポータル画面イメージ
VPN_GW_PA ›› 接続 ›› 追加
基本
1リソースグループPA-VPN-RG
2接続の種類サイト対サイト (IPsec)
3名前PA-VPN-CONNECTION
地域Japan East
設定
4仮想ネットワーク ゲートウェイVPN_GW_PA
ローカル ネットワーク ゲートウェイPaloalto
5共有キー (PSK)●●●●●●●●
6IKE プロトコル○ IKEv1◉ IKEv2
BGP を有効にする☐
7IPsec および IKE ポリシー◉ 既定○ カスタム
ポリシー ベースのトラフィック セレクターを使用する○ 有効化◉ 無効化
DPD タイムアウト (秒)45
接続モード◉ Default○ InitiatorOnly○ ResponderOnly
8確認および作成前へ次: タグ >
図9 接続の作成(実際の画面ではなく、「基本」タブと「設定」タブの設定項目をまとめたイメージです)
No.項目設定内容
1リソースグループPA-VPN-RG
2接続の種類サイト対サイト (IPsec)
3名前任意の名前。今回は PA-VPN-CONNECTION
4仮想ネットワーク ゲートウェイ/ローカル ネットワーク ゲートウェイSTEP 5 の VPN_GW_PA と、STEP 4 の Paloalto
5共有キー (PSK)任意の事前共有鍵。対向の Palo Alto と同じ値にする
6IKE プロトコルIKEv2
7IPsec および IKE ポリシー既定(後の章でカスタムに変更する)
8確認および作成クリックし、「検証に成功しました」と表示されたら「作成」をクリック。しばらくするとデプロイが完了する

「ポリシー ベースのトラフィック セレクターを使用する」が無効化のままなので、ルートベースの VPN として、通信の範囲(トラフィックセレクター)は全範囲(0.0.0.0/0)で取り決められます。そのため、Palo Alto 側でプロキシ ID を設定する必要はありません。

PaloaltoのVPN設定

Palo Alto で、Azure VPN Gateway に対するサイト間 VPN を設定します。設定するオブジェクトの関係は次のとおりです。

IKE 暗号プロファイルdefault → azure-ikeIKE ゲートウェイazure-ike-gwIPSec 暗号プロファイルdefault → Azure-IPSecIPSec トンネルazure-ipsec-tunnelトンネルインタフェースtunnel.1ゾーン IPSec/VR defaultスタティックルート172.16.1.0/24セキュリティポリシーTrust → IPSec
図10 Palo Alto で設定するオブジェクトの関係(矢印は設定で指定する先)

トンネルインタフェースの作成

VPN のトラフィックは、トンネルインタフェースを通して送受信されます。まず、このトンネルインタフェースを作ります。NETWORK ›› インターフェース ›› トンネル ›› 追加 を開きます。

トンネルインタフェースに割り当てるセキュリティゾーンは、IPsec 用に新しく作ります。「セキュリティゾーン」で「新規ゾーン」を選び、名前(今回は IPSec)を入れて「OK」をクリックします。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› インターフェース ›› トンネル ›› トンネル インターフェイス
1インターフェイス名tunnel . 1
Netflow プロファイルNone
設定 ›› インターフェイスの割り当て先
2仮想ルーターdefault
3セキュリティ ゾーンIPSec
4OKキャンセル
登録後の一覧
インターフェイスIP アドレス仮想ルーターセキュリティ ゾーン
tunnelnonenonenone
tunnel.1nonedefaultIPSec
図11 トンネルインタフェースの作成(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1インターフェイス名サブインタフェース番号は任意。今回は 1(tunnel.1)
2仮想ルーターdefault
3セキュリティ ゾーン新しく作った IPSec
4OKクリックして登録

スタティックルートで VPN に送る構成では、トンネルインタフェースに IP アドレスを付けなくても通信できます。今回も IP アドレスは none のままです。

IKEゲートウェイの作成

IKE ゲートウェイでは、IKE で鍵交換をする相手(ピア)と、その方法を決めます。NETWORK ›› ネットワークプロファイル ›› IKE ゲートウェイ ›› 追加 を開き、「全般」タブと「詳細オプション」タブを設定します。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› ネットワークプロファイル ›› IKE ゲートウェイ
全般
1名前azure-ike-gw
2バージョンIKEv2 preferred mode
アドレス タイプ◉ IPv4○ IPv6
3インターフェイスethernet1/1
ローカル IP アドレス192.168.20.120/24
4ピア IP アドレス タイプ◉ IP○ FQDN○ ダイナミック
ピア アドレス20.89.59.186
5認証◉ Pre-Shared Key○ 証明書
事前共有鍵/再入力 事前共有鍵●●●●●●●●
ローカル ID/ピア IDNone
詳細オプション
パッシブ モードを有効にする☐
6NAT トラバーサルを有効にする☑
7IKEv2 ›› IKE 暗号プロファイルdefault
ライブネス チェック ›› 間隔 (sec)☑ 5
8OKキャンセル
図12 IKE ゲートウェイの作成(実際の画面ではなく、「全般」タブと「詳細オプション」タブの設定項目をまとめたイメージです)
No.項目設定内容
1名前任意の名前。今回は azure-ike-gw
2バージョンIKEv1 only mode/IKEv2 only mode/IKEv2 preferred mode から選ぶ。今回は IKEv2 を優先して使うため IKEv2 preferred mode
3インターフェイス/ローカル IP アドレスインターネットにつながる ethernet1/1 と、そのアドレス 192.168.20.120/24
4ピア IP アドレス タイプ/ピア アドレスIP。Azure VPN Gateway のパブリック IP アドレス 20.89.59.186
5認証Pre-Shared Key。事前共有鍵には、Azure の接続(STEP 6)で設定した値を入れる
6NAT トラバーサルを有効にするNAT 環境なのでチェックを入れる
7IKE 暗号プロファイル(IKEv2)ここでは default のまま
8OKクリックして登録
NAT トラバーサル

IPsec の ESP は TCP や UDP のようなポート番号を持たないため、途中の NAT 機器でうまく変換できないことがあります。NAT トラバーサルを有効にすると、IKE で途中に NAT があることを検出した場合に、IKE と ESP を UDP 4500 番でカプセル化して送ります。今回の CLI の確認結果でも、ピアのアドレスが 20.89.59.186:4500 と表示されます。

IPSecトンネルの作成

IPSec トンネルを設定します。NETWORK ›› IPSec トンネル ›› 追加 を開き、「全般」タブを設定します。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› IPSec トンネル ›› IPSec トンネル(全般)
1名前azure-ipsec-tunnel
2トンネル インターフェイスtunnel.1
3タイプ◉ 自動キー○ 手動キー○ GlobalProtect サテライト
アドレス タイプ◉ IPv4○ IPv6
4IKE ゲートウェイazure-ike-gw
5IPSec 暗号プロファイルdefault
6OKキャンセル
図13 IPSec トンネルの作成(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1名前任意の名前。今回は azure-ipsec-tunnel
2トンネル インターフェイスSTEP 7 の tunnel.1
3タイプ自動キー(IKE で鍵を自動で取り決める)
4IKE ゲートウェイSTEP 8 の azure-ike-gw
5IPSec 暗号プロファイルここでは default
6OKクリックして登録

「OK」をクリックすると、次のように登録されます。まだ Commit していないので、トンネルも IKE も状態は赤(未確立)です。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› IPSec トンネル
名前状態タイプインターフェイスローカル IPピア アドレスIKE の状態
azure-ipsec-tunnel トンネル情報自動キーethernet1/1192.168.20.120/2420.89.59.186 IKE 情報
図14 登録直後の IPSec トンネル(実際の画面ではなく、表示のポイントを示したイメージです)

ルーティング設定

最後に、Azure 側のネットワーク(172.16.1.0/24)への通信を VPN トンネルに送るルートを設定します。NETWORK ›› 仮想ルーター ›› default ›› スタティックルート ›› 追加 を開きます。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› 仮想ルーター ›› default ›› スタティックルート – IPv4
1名前Azure-Remote-Network
2宛先172.16.1.0/24
3インターフェイスtunnel.1
4ネクスト ホップNone
メトリック10
ルート テーブルユニキャスト
5OKキャンセル
登録後のスタティックルート(IPv4)
名前宛先インターフェイスネクストホップメトリック
default-route0.0.0.0/0ethernet1/1ip-address 192.168.20.110
Azure-Remote-Network172.16.1.0/24tunnel.110
図15 スタティックルートの追加(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1名前任意の名前。今回は Azure-Remote-Network
2宛先Azure 側のネットワーク 172.16.1.0/24
3インターフェイスSTEP 7 の tunnel.1
4ネクスト ホップNone(トンネルインタフェースに送るだけでよいので、ネクストホップのアドレスは指定しない)
5OKクリックすると仮想ルーターの画面に戻るので、もう一度「OK」をクリック

設定が終わったら、Commit を実行して反映します。

VPN接続確認

NETWORK ›› IPSec トンネル で、トンネルの状態を確認できます。状態のアイコンが緑であれば、トンネルは確立しています。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› IPSec トンネル
名前状態タイプIKE の状態トンネル インターフェイス仮想ルーターゾーン
azure-ipsec-tunnel1 トンネル情報自動キー2 IKE 情報tunnel.1defaultIPSec
図16 IPSec トンネルの状態(実際の画面ではなく、表示のポイントを示したイメージです)
No.表示意味
1 トンネル情報(緑)IPsec トンネル(IPsec SA)が確立している。未確立のときは赤
2 IKE 情報(緑)IKE ゲートウェイとの IKE SA が確立している。未確立のときは赤

「トンネル情報」と「IKE 情報」をクリックすると、それぞれの詳細を確認できます。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
トンネル情報 – azure-ipsec-tunnel
名前ローカル IPローカル ポートピア IPリモート IPリモート ポート
azure-ipsec-tunnel192.168.20.1200 – 6553520.89.59.1860.0.0.0 – 255.25…0 – 65535
IKE 情報 – azure-ike-gw
名前ゲートウェイロールモードアルゴリズム
azure-ike-gw11RespIKEv22PSK/DH2/AES128/SHA1
図17 トンネル情報と IKE 情報(実際の画面ではなく、表示のポイントを示したイメージです。右側の一部の列は省略しています)
No.表示意味
1ロール RespPalo Alto が応答側(レスポンダ)。このときは Azure 側からネゴシエーションが始まった
2PSK/DH2/AES128/SHA1認証は事前共有鍵、DH グループ 2、暗号化 AES128、ハッシュ SHA1 で IKE SA ができた

Palo Alto の default プロファイルと Azure の既定ポリシーの組み合わせでは、DH グループ 2(1024 ビット)が選ばれました。DH グループ 2 は、IKEv2 の暗号要件をまとめた RFC 8247 で「使うべきではない(SHOULD NOT)」とされている弱いグループです。次の章で、より強いアルゴリズムに変更します。DH グループと鍵長の考え方は Diffie-Hellman 鍵交換をイメージで解説 で説明しています。

暗号化アルゴリズム、認証アルゴリズム、DHグループの変更

ここまでは、暗号化・認証アルゴリズムや DH グループを既定のままで接続しました。実際の環境では、セキュリティ要件に合わせてアルゴリズムを指定することをお勧めします。今回は、暗号化に aes-256-gcm、DH グループに group14(2048 ビット)を使います。Palo Alto では、IKE で AES-GCM を使えるのは IKEv2 だけです。

IKEゲートウェイの変更(Paloalto)

IKE ゲートウェイ azure-ike-gw の「全般」タブで、バージョンを IKEv2 only mode に変更します。

IKE暗号化プロファイル(Paloalto)

NETWORK ›› ネットワークプロファイル ›› IKE 暗号 ›› 追加 を開き、次のように設定します。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› ネットワークプロファイル ›› IKE 暗号プロファイル
1名前azure-ike
2DH グループgroup14
3認証non-auth
4暗号化aes-256-gcm
タイマー ›› キーの有効期間時間 8
IKEv2 多重認証0
5OKキャンセル
図18 IKE 暗号プロファイルの作成(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1名前任意の名前。今回は azure-ike
2DH グループgroup14 を追加
3認証non-auth を追加。AES-GCM は暗号化と改ざん検知を一緒に行うため、AES-GCM を選んだときは non-auth にする(ほかを選ぶとコミットに失敗する)
4暗号化aes-256-gcm
5OKタイマーは既定(キーの有効期間 8 時間)のまま、クリックして登録

作ったプロファイルを IKE ゲートウェイに紐付けます。NETWORK ›› ネットワークプロファイル ›› IKE ゲートウェイ で azure-ike-gw を開き、「詳細オプション」タブの「IKE 暗号プロファイル」を azure-ike にします。

IPSec暗号プロファイル(Paloalto)

NETWORK ›› ネットワークプロファイル ›› IPSec 暗号 ›› 追加 を開き、次のように設定します。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
NETWORK ›› ネットワークプロファイル ›› IPSec 暗号プロファイル
1名前Azure-IPSec
IPSec プロトコルESP
2暗号化aes-256-gcm
3認証none
4DH グループno-pfs
5ライフタイム秒 8400
ライフサイズ☐ 有効化
6OKキャンセル
図19 IPSec 暗号プロファイルの作成(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1名前任意の名前。今回は Azure-IPSec
2暗号化aes-256-gcm を追加
3認証none を追加(AES-GCM が改ざん検知も行うため)
4DH グループno-pfs(IPsec SA を作るときに追加の DH をしない)
5ライフタイム8400 秒に変更
6OKクリックして登録

作ったプロファイルを IPSec トンネルに紐付けます。NETWORK ›› IPSec トンネル で azure-ipsec-tunnel を開き、「全般」タブの「IPSec 暗号プロファイル」を Azure-IPSec にします。

IPSecおよびIKEポリシー(Azure VPN Gateway)

Azure VPN Gateway 側も、同じアルゴリズムを使うようにポリシーを変更します。仮想ネットワークゲートウェイの 接続 ›› PA-VPN-CONNECTION ›› 構成 を開き、「IPsec および IKE ポリシー」を「既定」から「カスタム」に変更します。

Azure ポータル画面イメージ
VPN_GW_PA ›› 接続 ›› PA-VPN-CONNECTION ›› 構成
1IPsec および IKE ポリシー○ 既定◉ カスタム
IKE フェーズ 1
2暗号化GCMAES256
整合性または PRFSHA256
DH グループDHGroup14
IKE フェーズ 2 (IPsec)
3IPsec 暗号化GCMAES256
IPsec 整合性GCMAES256
PFS グループNone
4保存
図20 接続の IPsec および IKE ポリシーをカスタムに変更(実際の画面ではなく、設定項目のポイントを示したイメージです)

Palo Alto と Azure の設定の対応をまとめると、次のようになります。両側で同じアルゴリズムを選ばないと、ネゴシエーションが失敗します。

項目Palo AltoAzure(カスタム ポリシー)
IKE のバージョンIKE ゲートウェイ:IKEv2 only mode接続の IKE プロトコル:IKEv2
IKE の暗号化IKE 暗号:aes-256-gcmIKE フェーズ 1 暗号化:GCMAES256
IKE の認証/整合性IKE 暗号 認証:non-auth整合性または PRF:SHA256
IKE の DH グループIKE 暗号:group14DH グループ:DHGroup14
IPsec の暗号化IPSec 暗号:aes-256-gcmIPsec 暗号化:GCMAES256
IPsec の認証/整合性IPSec 暗号 認証:noneIPsec 整合性:GCMAES256
PFSIPSec 暗号 DH グループ:no-pfsPFS グループ:None
補足

Palo Alto のドキュメントでは、aes-256-gcm と組み合わせる DH グループとして group20(楕円曲線の 384 ビット)が案内されています。より強い組み合わせにする場合は、Palo Alto 側を group20、Azure 側を対応する ECP384 にそろえます。

アルゴリズム変更後の確認

Palo Alto 側を Commit し、NETWORK ›› IPSec トンネル でトンネルが確立していることを確認します。「IKE 情報」をクリックすると、アルゴリズムが PSK/DH14/AES256-GCM16/COMBINED に変わっていることを確認できます。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
IKE 情報 – azure-ike-gw
名前ゲートウェイロールモードアルゴリズム
azure-ike-gw1RespIKEv21PSK/DH14/AES256-GCM16/COMBINED
図21 アルゴリズム変更後の IKE 情報(実際の画面ではなく、表示のポイントを示したイメージです)

DH14 は DH グループ 14、AES256-GCM16 は 16 バイトの認証タグを使う AES-256-GCM です。COMBINED は、暗号化と改ざん検知を一つのアルゴリズムでまとめて行っていることを表します。

セキュリティポリシー

VPN トンネルを通る通信は、トンネルインタフェースに割り当てたゾーン(今回は IPSec ゾーン)を指定したセキュリティポリシーで制御します。今回は、Trust ゾーンから IPSec ゾーンへのすべての通信を許可するポリシーを追加しました。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
POLICIES ›› セキュリティ
名前送信元ゾーン送信元アドレス宛先ゾーン宛先アドレスアプリケーションサービスアクション
Azure IPSecTrustany1IPSecanyanyapplication-d…✓ 許可
図22 VPN 向けのセキュリティポリシー(実際の画面ではなく、表示のポイントを示したイメージです)

ポリシーを追加すると、VPN トンネルを通した通信ができるようになります。PC(192.168.10.133)から Azure のサーバ(172.16.1.4)へ ping を送ると、トラフィックログに次のように記録されます。

Palo Alto 管理画面(PAN-OS 10.1)画面イメージ
MONITOR ›› ログ ›› トラフィック
タイプ送信元ゾーン宛先ゾーン送信元宛先アプリケーションアクションルールセッション終了理由
endTrustIPSec192.168.10.133172.16.1.4pingallowAzure IPSecaged-out
endTrustIPSec192.168.10.133172.16.1.4pingallowAzure IPSecaged-out
endTrustIPSec192.168.10.133172.16.1.4pingallowAzure IPSecaged-out
図23 VPN を通した ping のトラフィックログ(実際の画面ではなく、表示のポイントを示したイメージです。同じ行が続く部分は省略しています)

IPSec関連コマンド

IPsec VPN の運用で役に立つ CLI コマンドを紹介します。

VPN接続テスト(test vpn)

test vpn コマンドは、IKE SA や IPsec SA のネゴシエーションを手動で始めるコマンドです。新しく VPN を設定した後の確認や、VPN が予期せず切れたときの切り分けに使います。実行した後は、トンネルの状態を確認します。

test vpn ike-sa gateway ゲートウェイ名

指定した IKE ゲートウェイとの IKE SA のネゴシエーションを始めます。

PA-VM

admin@PA-VM> test vpn ike-sa gateway azure-ike-gw 

Start time: Apr.2 07:21:43
Initiate 1 IKE SA.

test vpn ipsec-sa tunnel トンネル名

指定した IPSec トンネルの IPsec SA のネゴシエーションを始めます。

PA-VM

admin@PA-VM> test vpn ipsec-sa tunnel azure-ipsec-tunnel 

Start time: Apr.2 07:25:14
Initiate 1 IPSec SA for tunnel azure-ipsec-tunnel.

show コマンド

show コマンドでは、VPN トンネルの現在の状態や SA の情報を確認できます。

show vpn flow

設定されている IPSec トンネルの一覧と状態を表示します。トンネル名、状態、ローカル IP、ピア IP、トンネルインタフェースを確認できます。

PA-VM

admin@PA-VM> show vpn flow 

total tunnels configured:                                     1
filter - type IPSec, state any

total IPSec tunnel configured:                                1
total IPSec tunnel shown:                                     1

id    name                                                            state   monitor local-ip                      peer-ip                       tunnel-i/f  
--    --------------                                                  -----   ------- --------                      -------                       ----------  
1     azure-ipsec-tunnel                                              active  off     192.168.20.120                20.89.59.186                  tunnel.1    

show vpn ike-sa

IKE SA と、その下の IPsec SA(IKEv2 では Child SA)の一覧を表示します。

PA-VM

admin@PA-VM> show vpn ike-sa

There is no IKEv1 phase-1 SA found.

There is no IKEv1 phase-2 SA found.


IKEv2 SAs
Gateway ID      Peer-Address           Gateway Name                                                    Role SN       Algorithm             Established     Expiration      Xt Child  ST                  
----------      ------------           ------------                                                    ---- --       ---------             -----------     ----------      -- -----  --                  
1               20.89.59.186           azure-ike-gw                                                    Init 27       PSK/DH14/AES256-GCM16 Apr.2 07:21:43 Apr.2 15:21:43 0  2      Established          

IKEv2 IPSec Child SAs
Gateway Name                                                    TnID     Tunnel                                                          ID       Parent   Role SPI(in)  SPI(out) MsgID    ST              
------------                                                    ----     ------                                                          --       ------   ---- -------  -------- -----    --              
azure-ike-gw                                                    1        azure-ipsec-tunnel                                              1171     27       Init EE9349AC 13AA3142 00000020 Mature           

Show IKEv2 SA: Total 1 gateways found. 1 ike sa found.
表示意味
There is no IKEv1 …IKEv1 の SA はない(IKEv2 で接続している)
Role InitPalo Alto がネゴシエーションを始めた側(test vpn を実行したため)
AlgorithmIKE SA の認証方式・DH グループ・暗号化
Established / ExpirationIKE SA ができた時刻と、期限の時刻(8 時間後)
ST EstablishedIKE SA が確立している
SPI(in) / SPI(out)Child SA(IPsec SA)の受信用と送信用の SPI
ST MatureChild SA が確立して使える状態

show vpn ike-sa detail gateway ゲートウェイ名

指定したゲートウェイの IKE SA と Child SA の詳細を表示します。

PA-VM

admin@PA-VM> show vpn ike-sa detail gateway azure-ike-gw 

IKE Gateway azure-ike-gw, ID 1 192.168.20.120 => 20.89.59.186
  Current time: Apr.2 07:34:59

IKE SA:
  SPI:  64E513471A0DA46E:59E55995B6BE2B00  Init
        State:      Established
        SN:         27
        Authentication:  PSK, peer PSK
        Proposal:   AES256-GCM16/COMBINED/DH14
        ID local:   ipaddr:192.168.20.120
           remote:  ipaddr:20.89.59.186
        ID_i:       IPv4_address:192.168.20.120
        ID_r:       IPv4_address:20.89.59.186
        NAT:        ME 
        Message ID: rx 56, tx 118
        Liveness check: sending informational packet after idle 5 seconds

        Created:    Apr.2 07:21:43, 13 minutes 17 seconds ago
        Expires:    Apr.2 15:21:43, rekey in 6 hours 32 minutes 4 seconds (24321 sec)

  Child SA 1171:
        Tunnel 1    azure-ipsec-tunnel
        Type:       ESP       Init
        State:      Mature
        Message ID: 00000020
        Parent SN:  27
        SPI:        EE9349AC : 13AA3142 
        Algorithm:  AES256-GCM16/COMBINED/
        TS local:   Proto:any, 0.0.0.0-255.255.255.255, Ports:any
        TS remote:  Proto:any, 0.0.0.0-255.255.255.255, Ports:any
        Created:    Apr.2 07:25:14, 9 minutes 46 seconds ago
        Expires:    Apr.2 09:45:14, rekey in 1 hour 48 minutes 48 seconds (7114 sec)

  Child SA 1256:
        Type:       INFO
        State:      Expired
        Message ID: 00000075
        Parent SN:  27
表示意味
Authentication: PSK, peer PSK自分も相手も事前共有鍵で認証している
ProposalIKE SA で使っている暗号化・PRF・DH グループ
NAT: ME自分(Palo Alto)側が NAT の内側にあると検出された
Expires … rekey in期限と、鍵を更新(リキー)するまでの残り時間
TS local / TS remoteトラフィックセレクター。どちらも全範囲(0.0.0.0-255.255.255.255)で、ルートベースの VPN になっている

show vpn ipsec-sa

IPsec SA の一覧を表示します。ピアのアドレス、トンネル名、アルゴリズム、SPI、ライフタイムと残り時間を確認できます。

PA-VM

admin@PA-VM> show vpn ipsec-sa

GwID/client IP  TnID   Peer-Address           Tunnel(Gateway)                                                                                                                  Algorithm          SPI(in)  SPI(out) life(Sec/KB)             remain-time(Sec)        
--------------  ----   ------------           ---------------                                                                                                                  ---------          -------  -------- ------------             ----------------        
1               1      20.89.59.186:4500      azure-ipsec-tunnel(azure-ike-gw)                                                                                                 ESP/G256/          EE9349AC 13AA3142 8400/Unlimited           7562                     

Show IPSec SA: Total 1 tunnels found. 1 ipsec sa found.
表示意味
20.89.59.186:4500ピアの UDP 4500 番で通信している(NAT トラバーサル)
ESP/G256/ESP で AES-256-GCM を使っている
8400/Unlimitedライフタイムが 8400 秒で、データ量の上限はなし(IPSec 暗号プロファイルの設定どおり)
remain-time(Sec)IPsec SA の残り時間

うまくつながらないとき

状態よくある原因確認すること
IKE SA ができない事前共有鍵の不一致、ピアアドレスの誤り、IKE バージョンやアルゴリズムの不一致Palo Alto の IKE ゲートウェイと Azure の接続で、共有キー、IKE バージョン、アルゴリズムが一致しているか。MONITOR ›› ログ ›› システム の IKE のログ
Azure 側で Palo Alto を相手として認識しないローカルネットワークゲートウェイの IP アドレスが NAT 変換前のアドレスになっているローカルネットワークゲートウェイの IP アドレスが、変換後のパブリック IP(今回は 54.249.146.40)か
NAT 環境でネゴシエーションが進まないNAT トラバーサルが無効、または途中の機器で UDP 500/4500 番が通らないIKE ゲートウェイの「NAT トラバーサルを有効にする」、上位の NAT 機器やファイアウォールの許可設定
トンネルは確立するが通信できないルート、セキュリティポリシー、Azure 側のアドレス空間の設定漏れPalo Alto のスタティックルート(宛先 172.16.1.0/24 → tunnel.1)、Trust → IPSec のポリシー、トラフィックログ、ローカルネットワークゲートウェイのアドレス空間(192.168.10.0/24)
アルゴリズム変更後につながらない片側だけ変更したPalo Alto と Azure のアルゴリズムの対応表どおりになっているか

まとめ

項目Palo AltoAzure
自分のパブリック IP54.249.146.40(192.168.20.120 を NAT で変換)20.89.59.186(仮想ネットワークゲートウェイ)
相手の指定IKE ゲートウェイ azure-ike-gw(ピア 20.89.59.186)ローカルネットワークゲートウェイ Paloalto(54.249.146.40)
相手側のネットワークスタティックルート 172.16.1.0/24 → tunnel.1ローカルネットワークゲートウェイのアドレス空間 192.168.10.0/24
事前共有鍵IKE ゲートウェイの事前共有鍵接続の共有キー (PSK)
暗号の設定IKE 暗号プロファイル/IPSec 暗号プロファイル接続の IPsec および IKE ポリシー(カスタム)
NAT 環境NAT トラバーサルを有効にする―
通信の許可セキュリティポリシー(Trust → IPSec)―

コメント