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

この記事では、Palo Alto NetworksのファイアウォールとMicrosoft Azure VPN Gatewayを用いて、サイト間VPN接続を構築する方法について確認します。

ネットワーク環境は、下記の構成図のとおりです。

Paloaltoは、NAT環境で使用しているため、ローカルアドレス(192.168.20.120)は、パブリックIPアドレス(54.249.146.40)に変換されます。

スポンサーリンク

Microsoft Azure VPN Gatewayの設定

Microsoft Azure VPN Gatewayを使用することで、Azureの仮想ネットワークにリモートユーザーや異なるサイトをVPNで接続することができます。

リソースグループの設定

最初のステップとして、リソースグループを設定します。リソースグループは、Azureリソースを整理し管理するためのコンテナです。

  >> 参考記事 :【Azure】リソースグループの概要と追加・削除 

Azureポータルにログイン後、「リソースグループ」を選択し、「作成」をクリックします。

リソースグループに名前を付け、リージョンを選択し、「確認および作成」をクリックします。

検証に成功しました」を確認後、「作成」をクリックします。

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

次に、仮想ネットワークを作成します。この仮想ネットワークは、Azure内でVPNゲートウェイや他のリソースをホストするためのものです。

  >> 参考記事 :【Azure】仮想ネットワーク(VNet)の概要 

仮想ネットワーク」を選択し、「作成」をクリックします。

基本」タブが表示されます。

  • リソースグループ名:「PA-VPN-RG」を選択
  • 仮想ネットワーク名:任意の名前。今回は、「PA-VPN-VNet」とします。
  • リージョン:Japan East を選択

IPアドレス」タブへ移動します。

デフォルトで設定されているIPv4アドレス空間があれば削除したあと、下記のとおり、172.16.0.0/16 のアドレス空間を作成し、「サブネットの追加」をクリックします。

サブネット追加」画面が出力されます。

  • 名前:任意の名前。今回は、「VPN-Subnet」とします。
  • 開始アドレス:サブネットの開始アドレスとして、「172.16.1.0」を入力
  • サイズ:サブネットマスクを選択。今回は、「/24(256個のアドレス)」を選択

追加」をクリックします。

確認+作成」をクリックします。

作成」をクリックします。

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

VPN Gatewayを配置するためのゲートウェイサブネットを作成します。

作成した仮想ネットワーク内で「サブネット」オプションを選択し、「+ゲートウェイサブネット」をクリックします。

「サブネットアドレスの範囲」を172.16.0.0/27 にして、「保存」をクリックします。

下記のとおり登録されます。

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

Paloalto側ののWANアドレスやローカルサブネットを定義するため、ローカルネットワークゲートウェイを作成します。

ローカルネットワークゲートウェイ」へ移動し、「作成」をクリックします。

下記の作成画面が表示されます。Paloalto側のパブリックIPアドレスやアドレス空間を指定します。

  • リソースグループ:「PA-VPN-RG」を指定
  • 名前:任意の名前。今回は「Paloalto」
  • エンドポイント:「IPアドレス」を選択
  • IPアドレス:Paloalto側のパブリックアドレスを設定
  • アドレス空間:Paloalto側のローカルのアドレス空間「192.168.10.0/24」を設定

確認および作成」をクリックします。

検証に成功しました」を確認後、「作成」をクリックします。

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

このステップでは、実際に VPN Gateway を作成します。

仮想ネットワークゲートウェイ」へ移動し、「作成」をクリックします。

仮想ネットワークゲートウェイ」の作成画面が表示されます。

  • 名前:任意の名前。今回は「VPN_GW_PA」とします。
  • 地域:「Japan East」を選択
  • ゲートウェイの種類:「VPN」を選択
  • SKU:ゲートウェイの種別。パフオーマンスなどトンネル数などが異なります。今回は「VpnGw1」を選択。
  • 仮想ネットワーク:「PA-VPN-VNet」を選択。
  • サブネット:上の仮想ネットワークに応じたゲートウェイサブネット(/27)を自動的に選択。
  • パブリックIPアドレス:既存のものはないので、「新規作成」を選択。
  • パブリックIPアドレス名:任意の名前。今回は「Azure_Public_IP」とします。
  • アクティブ/アクティブモードの有効化:「無効」を選択します。

完了後、「確認および作成」をクリックします。

検証に成功しました」を確認後、「作成」をクリックします。

作成完了までには、30~40分程度の時間がかかります。

仮想ネットワークゲートウェイの詳細を確認すると、割り当てられたパブリックIPアドレスを確認することができます。

仮想ネットワークの詳細画面に移動し、「接続デバイス」をクリックすることで、仮想ネットワークからも仮想ネットワークゲートウェイが作成されていることが確認できます。

接続の追加

Azure VPN Gatewayとオンプレミスのローカルネットワークゲートウェイの間の接続を作成します。
仮想ネットワークゲートウェイの詳細画面より、「接続」をクリックします。

追加」をクリックします。

接続の構成」画面が表示されます。

  • リソースグループ:「PA-VPN-RG」を選択
  • 接続の種類:「サイト対サイト(IPSec)」を選択
  • 名前:任意の名前。今回は「PA-VPN-CONNECTION」とします。

設定後、「次:設定」をクリックし、「設定」タブへ移動します。ここでは、仮想ネットワークゲートウェイやローカルネットワークゲートウェイを選択します。

  • 仮想ネットワークゲートウェイ:「VPN_GW_PA」を選択
  • ローカルネットワークゲートウェイ:「Paloalto」を選択
  • 共有キー(PSK):任意の共有キーを入力。対向のPaloaltoと同じ値に合わせる必要があります。
  • IPSecおよびIKEポリシー:「既定」を選択。

確認および作成」をクリックします。

検証に成功しました」を確認後、「作成」をクリックします。

しばらくすると、デプロイが完了します。

スポンサーリンク

PaloaltoのVPN設定

Palo Alto上でのAzure VPN Gatewayに対するサイト間VPNを設定します。

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

VPNトンネルはトンネルインタフェースを介して接続されます。まず、このトンネルインタフェースを作成します。

NETWORK」タブを選択し、「インターフェース」から「トンネル」を選び、「追加」をクリックします。

トンネルインタフェースに割り当てる仮想ルータとゾーンを設定します。

  • サブインタフェース番号:任意の番号。今回は「1」とします。
  • 仮想ルータ:「default」を選択

ゾーンはIPSec用に新規作成するため、「新規ゾーン」をクリックします。

名前に任意の名前(今回は「IPSec」とします。)を入力し、「OK」をクリックします。

ゾーンに「IPSec」が登録されていることを確認し、「OK」をクリックします。

下記のように登録されます。

IKEゲートウェイの作成

IKE(Internet Key Exchange)ゲートウェイは、VPN接続のためのセキュアなキーの交換に使用します。

NETWORK」タブから「ネットワークプロファイル」を選択し、「IKEゲートウェイ」を選んで「追加」をクリックします。

全般」タブで、IKEゲートウェイの設定をします。

  • 名前:任意の名前。今回は「azure-ike-gw」とします。
  • バージョン:「IKEv1 only mode」「IKEv2 only mode」「IKEv2 preferred mode」の3つのうち、いずれかを選択します。今回は、IKEv2を優先的にしようするため、「IKEv2 preferred mode」を選択します。
  • インタフェース:VPN対向向けのインタフェースを指定します。今回は、インターネットへ接続されている「ethernet1/1」を選択します。
  • ローカルIPアドレス:上記インタフェースにおけるPAのIPアドレスを選択します。今回は「192.168.20.120/24」を選択します。
  • ピアIPアドレスタイプ:「IP」を選択
  • ピアアドレス:対向のAzure VPN GatewayのIPアドレスを指定します。今回の環境では、「20.89.59.186」と入力します。
  • 認証:事前共有キーである「Pre-shaed Key」を選択
  • 事前共有鍵再入力事前共有鍵:Azure VPN Gatewayの構築で設定した事前共有鍵を入力します。

設定後、「詳細オプション」タブへ移動します。今回はNAT環境でのVPN接続のため、「NATトラバーサルを有効にする」にチェックを入れます。「IKEv2」タブの「IKE暗号プロファイル」は 「default」 のままとします。

完了後、「OK」をクリックします。

下記のように登録されます。

IPSecトンネルの作成

IPSecトンネルを設定します。

NETWORK」タブから「IPSecトンネル」を選択し、「追加」をクリックします。

全般」タブにて、IPSecトンネルを設定します。

  • 名前:任意の名前。今回は「azure-ipsec-tunnel」とします。
  • トンネルインタフェース:「tunnel.1」を選択
  • タイプ:「自動キー」を選択
  • IKEゲートウェイ:「azure-ike-gw」を選択
  • IPSec暗号プロファイル:「default」を選択

設定後、「OK」をクリックします。すると、下記のように登録されます。

ルーティング設定

最後にVPNトンネル経由でAzure VPN Gatewayのローカルにあるネットワークにルーティングするための設定をします。

NETWORK」タブから「仮想ルーター」を選択し、使用中のルーターである「default」をクリックします。

スタティックルート」を選択し、「追加」をクリックします。

スタティックルート」を追加し、トンネルインタフェースを指定し、Azureネットワークへのルート(172.16.1.0/24)を設定します。

  • 名前:任意の名前。今回は「Azure-Remote-Network」とします。
  • 宛先:Azureのリモートネットワーク側である「172.16.1.0/24」を設定。
  • インタフェース:作成したトンネルインタフェース「tunnel.1」を選択
  • ネクストホップ:「None」を選択

設定後、「OK」をクリックします。下記画面に推移しますので、再度「OK」をクリックします。

Commit を実行し、設定を反映させます。

スポンサーリンク

VPN接続確認

NETWORK」タブから「IPSecトンネル」を移動すると、トンネルの状態が確認できます。状態のアイコンが色がであれば、トンネル接続されています。

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

スポンサーリンク

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

上の例では、暗号化・認証アルゴリズムやDHグループはデフォルトで接続をしました。実環境ではセキュリティ要件によりカスタム設定でアルゴリズムを追加することをお勧めします。

IKE情報を見ると、アルゴリズムは、「PSK/DH2/AES128/SHA1」です。今回は、暗号化方式で、「aes-256-gcm」を使用してみようと思います。これは、IKEv2のみで使用できます。

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

IKEゲートのバージョンを「IKEv2 Only mode」に変更します。

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

NETWORK」タブから「ネットワークプロファイル」>> 「IKE暗号」へ移動し、「追加」をクリックします。

下記のように設定します。

  • 名前:任意の名前。今回は「azure-ike」とします。
  • DHグループ:group14」 を追加
  • 認証:「non-auth」 を追加
  • 暗号化:「aes-256-gcm」 を選択
  • タイマー:デフォルトのまま

設定後、「OK」 をクリックします。

この新しいプロファイルをIKEゲートウェイに紐づけます。

NETWORK」タブから「ネットワークプロファイル」>> 「IKEゲートウェイ」へ移動し、作成済みの「azure-ike-gw」の「詳細オプション」タブより「IKE暗号プロファイル」を紐づけます。

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

NETWORK」タブから「ネットワークプロファイル」>> 「IPSec暗号」へ移動し、「追加」をクリックします。

下記のように設定します。

  • 名前:任意の名前。今回は「Azure-IPSec」とします。
  • 暗号化:「aes-256-gcm」を追加
  • 認証:「none」を追加
  • DHグループ:「no-pfs」 を選択
  • ライフタイム:8400 秒 に変更

設定後、「OK」 をクリックします。

この新しいプロファイルをIPSecトンネルに紐づけます。

NETWORK」タブから「IPSecトンネル」へ移動し、作成済みの「azure-ipsec-tunnel」の「全般」タブより「IPSec暗号プロファイル」を紐づけます。

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

Azure VPN Gateway側も、「aes-256-gcm」を使用できるよう、ポリシーを変更します。

仮想ネットワークゲートウェイから「接続」へ移動し、作成した「PA-VPN-CONNECTION」をクリックします。

構成」をクリックします。

IPSecおよヴぃIKEポリシー」を「既定」から「カスタム」へ変更し、方式を下記のとおり選択します。

  • IKEフェーズ1
    • 暗号化GCMAES256 を選択
    • 整合性またはPRFSHA256 を選択
    • DHグループDHGroup14 を選択
  • IKEフェーズ2(IPSec)
    • IPSec暗号化GCMAES256 を選択
    • IPSec整合性GCMAES256  を選択
    • PFSグループNone を選択

設定変更後、「保存」をクリックします。

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

NETWORK」タブから「IPSecトンネル」を移動すると、トンネルが確立されていることが確認できます。

「IKE情報」をクリックし、詳細を確認すると、アルゴリズムが「PSK/DH14/AES256-GCM16/COMBINED」であること確認できます。

スポンサーリンク

セキュリティポリシー

VPNトンネルを介した通信は、トンネルインタフェースに割り当てたゾーン(今回は「IPSec」ゾーン)へのセキュリティポリシーを設定することで、制御します。

今回は、下記のように、TrustゾーンからIPSecゾーンに対してのすべての通信を許可するポリシーを追加しました。

実際にVPNトンネルを介した通信も可能となります。

スポンサーリンク

IPSec関連コマンド

IPSec VPNを運用する際に役立つコマンドを紹介します。

VPN接続テスト(test vpn)

test vpn コマンドは、VPNの接続テストとトラブルシューティングに使用されます。このコマンドは、特定のVPNトンネルが正しく機能しているかどうかを確認する際に非常に便利です。

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

指定されたIKEゲートウェイに対するIKE SA(Security Association)の状態をテストします。

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トンネルのSAをテストします。

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.

これらのコマンドは、VPN接続が予期せずダウンした場合や、新しいVPN接続を設定した後の検証に特に役立ちます。コマンド実行後、VPNトンネル状態を確認してください。

show コマンド

show コマンドは、VPNトンネルの現在の状態や統計情報を表示するのに使用されます。このコマンドは、VPNのパフォーマンス監視やトラブルシューティングに役に立ちます。

show vpn flow

すべてのアクティブなVPNフローの詳細を表示します。これには、セッションごとの詳細、トンネル名、ソースと宛先のIPアドレス、使用されているプロトコルなどの情報が含まれます。

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に関する詳細情報が表示されます。これには、接続の状態、ピアのID、暗号化および認証の詳細、SAのライフタイムなどが含まれます。

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.

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

指定されたゲートウェイに関連するIKE SAの詳細な情報を表示します。これには、SAのライフタイム、使用されている暗号化方法、認証情報、およびフェーズ1のネゴシエーションの詳細が含まれます。

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

show vpn ipsec-sa

IPSec SAの情報が表示されます。トンネル名、セキュリティプロトコル、暗号化方式、認証方式、SAのライフタイム、およびトラフィック統計などの詳細が含まれます。

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.
スポンサーリンク

参考

  >> 参考記事 :Configuring IKEv2 IPsec VPN for Microsoft Azure Environment 
Configuring IKEv2 IPsec VPN for Microsoft Azure Environment
Microsoft Azure requires IKEv2 for dynamic routing, also known as route-based VPN. IKEv1 is restricted to static routing...

コメント