【Paloalto】GlobalProtectの設定(ローカルユーザ)と動作確認 PANOS 10.2.4

音声で聞く

読む前にこの記事のポイントを音声で確認できます。この音声は本記事をもとにAIツール(NotebookLM)で自動生成したもので、発音や言い回しが不自然な箇所や、内容の誤りが含まれる可能性があります。理解の補助としてご利用ください。

Palo Alto Networks のファイアウォールでは、GlobalProtect を使って、リモートユーザ向けの VPN 接続を提供できます。この記事では、AWS 上の PA-VM(PAN-OS 10.2.4)で、ユーザ認証に Palo Alto のローカルデータベースを、サーバ証明書に Palo Alto 自身が発行する自己署名の証明書を使って、GlobalProtect を設定し、Windows 端末から接続できるところまでを確認します。

この記事でわかること
  1. ローカルユーザ、認証プロファイル、証明書、SSL/TLS サービスプロファイルの作り方
  2. トンネルインタフェース、ゲートウェイ、ポータルの設定
  3. 端末への GlobalProtect アプリと認証局証明書のインストール、接続の確認
  4. ログと接続ユーザの確認、インターネットへ出るための NAT とセキュリティポリシー

検証の構成

PA-VM の ethernet1/1 で、ポータルとゲートウェイを同じ IP アドレスで動かします。ethernet1/1 のアドレスには AWS の Elastic IP が対応づけられていて、端末はインターネットから Elastic IP の FQDN(ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com)で接続します。接続した端末は、トンネルインタフェース tunnel.1(ゾーン SSL-VPN)に収容され、IP プール 192.168.100.0/24 からアドレスを受け取ります。

リモート端末GlobalProtect アプリインターネットAWS(Elastic IP ⇔ ethernet1/1)PA-VM(PAN-OS 10.2.4)ethernet1/1 でポータル/ゲートウェイローカル DB認証tunnel.1(ゾーン SSL-VPN)IP プール 192.168.100.0/24
図1 検証の構成

ポータルは、ユーザを認証して、接続先のゲートウェイなどのエージェント設定を端末に渡す役割です。ゲートウェイは、端末とのトンネルを終端して、通信にセキュリティポリシーを適用する役割です。この記事では 1 台の PA-VM が両方を担当します。

ローカルユーザでの認証のほか、Active Directory 連携は以下の記事も参考にしてください。この記事は、ローカルユーザでの認証である本記事をベースに、差分を記載しています。

>> 参考記事:GlobalProtectの設定(ActiveDirectory連携)と動作確認 PANOS9.0.9-h1.xfr

設定の順番

ポータルとゲートウェイは、認証プロファイル、SSL/TLS サービスプロファイル、トンネルインタフェースを参照します。参照されるものから順に作ると、途中で画面を行き来せずに済みます。

ローカルユーザ(伏せています)ユーザグループSSL-VPN-Users-Group認証プロファイルSSL-VPN-Auth-Profile認証局証明書PA-Cert-Authorityサーバ証明書GP-Portal-Gateway-CertSSL/TLS プロファイルGP-SSL-Profiletunnel.1ゾーン SSL-VPNIP プール192.168.100.0/24ポータルGP-PortalゲートウェイGP-Gateway左から順に作り、最後にポータルとゲートウェイで参照する
図2 作る設定と参照の関係
現在の状況

この記事は PAN-OS 10.2.4 と GlobalProtect アプリ 5.2.13 で検証しています。Palo Alto Networks の End-of-Life Summary では、PAN-OS 10.2 の通常のサポート終了日は 2025年8月27日、Extended Support+ の終了日は 2027年3月31日です。GlobalProtect アプリ 5.2 は 2024年2月28日、6.0 と 6.1 は 2025年12月31日にサポートが終了しています。新しく構築する場合は、サポート中のバージョンで画面や項目を確認してください。

画面イメージについて

この記事の画面は、実際の画面ではなく、検証時(2023年10月)の画面から設定する項目(見るポイント)を抜き出して描いたイメージです。バージョンによって、項目の並びや表記は変わります。ユーザ名、IP アドレスなどは伏せています。

ローカルユーザデータベースの作成

ユーザを作る

Device ›› ローカル ユーザー データベース ›› ユーザー を開き、「追加」をクリックします。名前とパスワードを入力し、「有効化」にチェックが入っていることを確かめて「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Device ›› ローカル ユーザー データベース ›› ローカル ユーザー
1名前(伏せています)
モード◉ パスワード○ パスワード ハッシュ
2パスワード••••••••••••••••
再入力 パスワード••••••••••••••••
3有効化☑
図3 ローカル ユーザーの画面(実際の画面ではなく、入力する項目を示したイメージです)
No.項目設定内容
1名前VPN で使うユーザ名。端末からログインするときに入力します
2パスワードパスワードを 2 回入力します
3有効化チェックを入れたままにします。外すとそのユーザはログインできません

ユーザグループを作る

あとからユーザを追加しやすいように、SSL-VPN のユーザをまとめるグループを作ります。認証プロファイルではこのグループを許可するので、ユーザを増やすときはグループに入れるだけで済みます。

Device ›› ローカル ユーザー データベース ›› ユーザー グループ を開き、「追加」をクリックします。名前を SSL-VPN-Users-Group とし、「追加」で先ほど作ったユーザを選んで「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Device ›› ローカル ユーザー データベース ›› ローカル ユーザー グループ
1名前SSL-VPN-Users-Group
2すべてのローカル ユーザー
ユーザー(伏せています)
追加削除OKキャンセル
図4 ローカル ユーザー グループの画面(実際の画面ではなく、グループにユーザを入れるポイントを示したイメージです)
No.項目設定内容
1名前SSL-VPN-Users-Group
2すべてのローカル ユーザー「追加」で STEP 1 のユーザを選びます

認証プロファイルの設定

認証プロファイルで、ユーザの認証先をローカルデータベースにし、ログインを許可するのは SSL-VPN-Users-Group のユーザだけ、と指定します。

認証プロファイルを作る

Device ›› 認証プロファイル を開き、「追加」をクリックします。「認証」タブで名前とタイプを設定し、「詳細」タブの許可リストで「追加」をクリックして SSL-VPN-Users-Group を選びます。設定したら「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Device ›› 認証プロファイル ›› 認証プロファイル
1名前SSL-VPN-Auth-Profile
認証 | 因子 | 詳細
2タイプローカル データベース
ユーザー ドメイン 
ユーザー名修飾子%USERINPUT%
詳細 | 認証 | 因子
3許可リスト
許可リストSSL-VPN-Users-Group
アカウントのロックアウト許容ログイン回数 [0 – 10]
図5 認証プロファイルの画面(実際の画面ではなく、「認証」タブと「詳細」タブで設定する項目をまとめたイメージです)
No.項目設定内容
1名前SSL-VPN-Auth-Profile
2タイプローカル データベース。ファイアウォールのローカルユーザデータベースで認証します
3許可リストSSL-VPN-Users-Group。このプロファイルで認証できるユーザやグループを限定します

証明書の作成

端末はポータルとゲートウェイに SSL/TLS で接続するので、ファイアウォールにはサーバ証明書が必要です。今回は Palo Alto 自身を認証局(CA)にして、その CA でサーバ証明書に署名します。端末側には、あとでこの CA の証明書を信頼されたルート証明機関として入れます。

PA-Cert-Authority認証局(自己署名)GP-Portal-Gateway-CertCN/SAN = ポータルの FQDN署名ポータル/ゲートウェイ提示リモート端末SSL/TLS で証明書を提示信頼されたルート証明機関PA-Cert-Authority(証明書だけ)証明書だけを書き出して配るこの CA で検証
図6 自己署名の認証局とサーバ証明書の関係

認証局の証明書を作る

Device ›› 証明書の管理 ›› 証明書 を開き、「デバイス証明書」タブで「生成」をクリックします。証明書名と共通名を入力し、「認証局」にチェックを入れて「生成」をクリックします。ポップアップが表示されたら「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Device ›› 証明書の管理 ›› 証明書 ›› 証明書の生成
証明書タイプ◉ ローカル○ SCEP
1証明書名PA-Cert-Authority
共通名PA-Cert-Authority
署名者 
2認証局☑
秘密鍵のエクスポートをブロック☐
暗号設定
アルゴリズムRSA
ビット数2048
ダイジェストsha256
有効期間(日)365
3生成キャンセル
図7 認証局の証明書を生成する画面(実際の画面ではなく、入力する項目を示したイメージです)
No.項目設定内容
1証明書名/共通名任意の名前。今回はどちらも PA-Cert-Authority とします
2認証局チェックを入れます。この証明書でほかの証明書に署名できるようになります。署名者は空欄のままにするので、自己署名の CA になります
3生成暗号設定は表示された値(RSA、2048 ビット、sha256)のまま生成します

サーバ証明書を作る

今回は、ゲートウェイとポータルで同じ IP アドレスを使います。そこで、ゲートウェイとポータルで共通のサーバ証明書を 1 つ作ります。Device ›› 証明書の管理 ›› 証明書 で、もう一度「生成」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Device ›› 証明書の管理 ›› 証明書 ›› 証明書の生成
証明書タイプ◉ ローカル○ SCEP
1証明書名GP-Portal-Gateway-Cert
2共通名ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com
3署名者PA-Cert-Authority
認証局☐
⋮(暗号設定は STEP 4 と同じ)
証明書の属性
タイプ値
4Host Name = “DNS” from Subject Alternative Name (SAN) fieldec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com
追加生成キャンセル
図8 サーバ証明書を生成する画面(実際の画面ではなく、入力する項目を示したイメージです)
No.項目設定内容
1証明書名任意の名前。今回は GP-Portal-Gateway-Cert とします
2共通名端末が接続に使う名前。今回は Elastic IP の FQDN を設定します(XXX-XXX-XXX-XXX にはグローバルアドレスが入ります)
3署名者STEP 4 で作った PA-Cert-Authority
4証明書の属性「追加」で、タイプ Host Name に同じ FQDN を設定します。証明書のサブジェクト代替名(SAN)に DNS 名として入ります
補足

TLS クライアントは、接続先の名前を、証明書の SAN にある DNS 名と照らし合わせて確かめます(RFC 6125)。共通名だけでなく SAN にも、端末がポータルに接続するときに入力する FQDN を入れておきます。

生成するとポップアップが表示されるので「OK」をクリックします。証明書の一覧で、認証局証明書(PA-Cert-Authority)の下に、サーバ証明書(GP-Portal-Gateway-Cert)が発行されていることを確かめます。

PA-VM(Web インタフェース)画面イメージ
Device ›› 証明書の管理 ›› 証明書 ›› デバイス証明書
名前サブジェクト発行者CA
1∨ PA-Cert-AuthorityCN = PA-Cert-AuthorityCN = PA-Cert-Authority☑
2    GP-Portal-Gateway-CertCN = ec2-XXX-XXX-XXX-XXX.ap-nort…CN = PA-Cert-Authority☐
図9 証明書の一覧(実際の画面ではなく、CA の下にサーバ証明書が並ぶポイントを示したイメージです)
No.表示意味
1PA-Cert-Authorityサブジェクトと発行者が同じで、CA にチェックが付いています。自己署名の認証局です
2GP-Portal-Gateway-Cert発行者が PA-Cert-Authority なので、CA の下に表示されます

SSL/TLSサービスプロファイルの作成

ゲートウェイとポータルで使う SSL/TLS サービスプロファイルを作り、STEP 5 のサーバ証明書と紐づけます。

SSL/TLS サービスプロファイルを作る

Device ›› 証明書の管理 ›› SSL/TLS サービス プロファイル を開き、「追加」をクリックします。名前と証明書を設定して「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Device ›› 証明書の管理 ›› SSL/TLS サービス プロファイル
1名前GP-SSL-Profile
2証明書GP-Portal-Gateway-Cert
プロトコル設定
3最小バージョンTLSv1.0
最大バージョンMax
図10 SSL/TLS サービス プロファイルの画面(実際の画面ではなく、サーバ証明書を選ぶポイントを示したイメージです)
No.項目設定内容
1名前任意の名前。今回は GP-SSL-Profile とします
2証明書STEP 5 の GP-Portal-Gateway-Cert
3最小/最大バージョン検証では表示された値(TLSv1.0/Max)のままにしています
本番での設定

TLS 1.0 と 1.1 は RFC 8996 で非推奨になっています。Palo Alto Networks のドキュメントでも、管理アクセス以外のサービスでは最小バージョンを TLSv1.2 にするよう案内しています。本番では最小バージョンを TLSv1.2 以上にしてください。

トンネルインタフェースの追加

SSL-VPN を終端するトンネルインタフェースを設定します。接続したユーザは専用のゾーン(SSL-VPN)に収容し、ほかのゾーンとの通信にはセキュリティポリシーを適用できるようにします。

トンネルインタフェースとゾーンを作る

Network ›› インターフェイス の「トンネル」タブで「追加」をクリックします。サブインタフェース番号(今回は 1)を入力し、仮想ルーターに default を選びます。セキュリティ ゾーンは、プルダウンの下にある「新規 ゾーン」をクリックして新しく作ります。

PA-VM(Web インタフェース)画面イメージ
Network ›› インターフェイス ›› トンネル ›› トンネル インターフェイス
1インターフェイス名tunnel . 1
Netflow プロファイルNone
設定 | IPv4 | IPv6 | 詳細
2仮想ルーターdefault
3セキュリティ ゾーン
None ▾None
Trust
Untrust
新規 ゾーン
図11 トンネル インターフェイスの画面(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1インターフェイス名番号に 1 を入れて tunnel.1 にします
2仮想ルーターdefault。ethernet1/1 などと同じ仮想ルータに入れます
3セキュリティ ゾーン「新規 ゾーン」で VPN ユーザ用のゾーンを作ります

ゾーンの画面では、名前を SSL-VPN とし、「ユーザー ID の有効化」にチェックを入れて「OK」をクリックします。トンネル インターフェイスの画面に戻ったら、もう一度「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Network ›› インターフェイス ›› トンネル ›› ゾーン
1名前SSL-VPN
ログ設定None
タイプレイヤー3
2ユーザー ID ACL☑ ユーザー ID の有効化
Device-ID ACL☐ デバイス ID を有効化
ゾーン プロテクション プロファイルNone
図12 ゾーンの画面(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1名前任意の名前。今回は SSL-VPN とします
2ユーザー ID の有効化チェックを入れます。このゾーンの通信を、認証済みのユーザ名と結びつけて識別できるようになります(トラフィックログの送信元ユーザや、ユーザを条件にしたポリシーに使えます)

トンネルインタフェースの一覧に tunnel.1 が登録されたことを確かめます。

ゲートウェイの設定

外部(インターネット)から SSL-VPN でアクセスしてくる端末を受け付けるゲートウェイを設定します。

ゲートウェイの全般と認証を設定する

Network ›› GlobalProtect ›› ゲートウェイ を開き、「追加」をクリックします。「全般」で名前と待ち受けるインタフェース、IP アドレスを設定します。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ゲートウェイ ›› 全般
1名前GP-Gateway
ネットワーク設定
2インターフェイスethernet1/1
IP アドレス タイプIPv4 Only
IPv4 アドレス(伏せています)
ログ設定
成功した SSL ハンドシェイク☐ ログに記録
失敗した SSL ハンドシェイク☑ ログに記録
図13 ゲートウェイの「全般」(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1名前任意の名前。今回は GP-Gateway とします
2インターフェイス/IP アドレスSSL-VPN の受け口である ethernet1/1、IPv4 Only を選び、ゲートウェイとして受け付ける ethernet1/1 の IPv4 アドレスを選びます

次に「認証」へ移動します。SSL/TLS サービス プロファイルに GP-SSL-Profile を選び、クライアント認証の「追加」をクリックします。クライアント認証の画面で、名前(今回は Client-Auth)を入力し、認証プロファイルに SSL-VPN-Auth-Profile を選んで「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ゲートウェイ ›› 認証
サーバー認証
1SSL/TLS サービス プロファイルGP-SSL-Profile
クライアント認証
名前OS認証プロファイルユーザー名のラベルパスワード ラベル
2Client-AuthAnySSL-VPN-Auth-ProfileUsernamePassword
証明書プロファイルNone
図14 ゲートウェイの「認証」(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1SSL/TLS サービス プロファイルSTEP 6 の GP-SSL-Profile。ゲートウェイが端末に提示する証明書が決まります
2クライアント認証OS は Any のまま、認証プロファイルに STEP 3 の SSL-VPN-Auth-Profile を選びます

トンネルと IP プールを設定する

「エージェント」へ移動し、まず「トンネル設定」タブを設定します。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ゲートウェイ ›› エージェント ›› トンネル設定
1トンネル モード☑
2トンネル インターフェイスtunnel.1
最大ユーザー[1 – 2000]
3IPSec の有効化☐
図15 ゲートウェイの「エージェント」の「トンネル設定」(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1トンネル モードチェックを入れて有効にします
2トンネル インターフェイスSTEP 7 の tunnel.1
3IPSec の有効化チェックを外します。外すと SSL でトンネルを張ります。有効のままだと、アプリはまず IPSec を試し、張れないときに SSL を使います

次に「クライアントの設定」タブで「追加」をクリックします。「設定の選択条件」タブで名前(今回は GP-Client-Setting)を入力し、「IP プール」タブの右側(IP プール)で「追加」をクリックして 192.168.100.0/24 を入力します。「OK」をクリックし、ゲートウェイの画面に戻ったらもう一度「OK」をクリックします。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ゲートウェイ ›› エージェント ›› クライアントの設定 ›› 設定
設定の選択条件 | 認証オーバーライド | IP プール | トンネルの分割 | ネットワークサービス
1名前GP-Client-Setting
送信元ユーザーany
OS☑ いずれか
IP プール | 設定の選択条件 | 認証オーバーライド | トンネルの分割 | ネットワークサービス
認証サーバーからの Framed-IP-Address 属性の取得☐
2IP プール
IP プール192.168.100.0/24
図16 クライアントの設定(実際の画面ではなく、「設定の選択条件」と「IP プール」で設定する項目をまとめたイメージです)
No.項目設定内容
1名前任意の名前。今回は GP-Client-Setting とします。ユーザや OS の条件は any のままにして、すべての端末にこの設定を使います
2IP プール192.168.100.0/24。接続した端末にはこの範囲からアドレスが払い出されます
トンネルの分割

今回は「トンネルの分割」を設定していません。アクセス ルートを設定しない場合、端末にはトンネル側を向くデフォルトルートが作られ、端末の通信はすべてトンネルを通ります。そのため、端末がインターネットに出るには、あとで設定する SSL-VPN ゾーンから Untrust ゾーンへの NAT とセキュリティポリシーが必要です。

ゲートウェイの一覧に、GP-Gateway(ローカル インターフェイス ethernet1/1、トンネル tunnel.1)が登録されたことを確かめます。

ポータル設定

SSL-VPN ユーザのアクセスを受け付けて認証し、接続先のゲートウェイなどのエージェント設定を端末に渡すポータルを設定します。

ポータルの全般と認証を設定する

Network ›› GlobalProtect ›› ポータル を開き、「追加」をクリックします。「全般」で、ゲートウェイと同じインタフェースと IP アドレスを設定します。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ポータル ›› 全般
1名前GP-Portal
ネットワーク設定
2インターフェイスethernet1/1
IP アドレス タイプIPv4 Only
IPv4 アドレス(伏せています)
Appearance
ポータルのログイン ページfactory-default
ポータルのランディング ページfactory-default
図17 ポータルの「全般」(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1名前任意の名前。今回は GP-Portal とします
2インターフェイス/IP アドレスゲートウェイと同じ ethernet1/1、IPv4 Only、同じ IPv4 アドレス

「認証」へ移動し、ゲートウェイと同じように、SSL/TLS サービス プロファイルに GP-SSL-Profile を選び、クライアント認証(名前 Client-Auth、認証プロファイル SSL-VPN-Auth-Profile)を追加します。

ポータルのエージェント設定を作る

「エージェント」へ移動し、エージェントの「追加」をクリックします。「認証」タブで名前(今回は GP-Agent)を入力します。ほかの項目は表示された値のままにします。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ポータル ›› エージェント ›› 設定
認証 | 設定の選択条件 | 内部 | 外部 | アプリケーション | HIP データ収集
1名前GP-Agent
クライアント証明書None
2ユーザー認証情報の保存Yes
図18 ポータルのエージェント設定の「認証」タブ(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1名前任意の名前。今回は GP-Agent とします
2ユーザー認証情報の保存表示された値(Yes)のままです。ユーザ名とパスワードがアプリに保存されます

次に「外部」タブで「追加」をクリックし、外部ゲートウェイを設定します。

PA-VM(Web インタフェース)画面イメージ
Network ›› GlobalProtect ›› ポータル ›› エージェント ›› 外部 ›› 外部ゲートウェイ
1名前Gateway
2アドレス◉ FQDN○ IP
ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com
送信元地域優先順位
3AnyHighest
4手動☑ ユーザーは手動でこのゲートウェイを選択できます
図19 外部ゲートウェイの画面(実際の画面ではなく、設定する項目を示したイメージです)
No.項目設定内容
1名前任意の名前。今回は Gateway とします。アプリの画面に、接続中のゲートウェイとして表示されます
2アドレスFQDN を選び、ゲートウェイの FQDN(サーバ証明書と同じ名前)を入力します
3送信元地域/優先順位「追加」で、送信元地域 Any、優先順位 Highest にします。どの地域から接続しても、このゲートウェイを最優先にします
4手動チェックを入れます。ユーザがアプリでこのゲートウェイを選べるようになります

「OK」をクリックし、エージェントの画面とポータルの画面でも「OK」をクリックします。

Commitの実行

Commit して警告を確かめる

設定を反映するために Commit を実行します。Commit は成功しますが、次のように警告が表示されます。

PA-VM(Web インタフェース)画面イメージ
Commit の状態
操作コミット
状態完了
結果成功
詳細Configuration committed successfully
1Warning: tunnel tunnel.1 ipv6 is not enabled. IPv6 address will be ignored!(Module: rasmgr)2Warning: Collect HIP Data in vsys (vsys1), GlobalProtect Portal (GP-Portal) -> Agent -> config (GP-Agent) -> HIP Data Collection will not take effect due to no valid GlobalProtect Subscription License(Module: rasmgr)
図20 Commit の状態(実際の画面ではなく、表示された警告を示したイメージです)
No.表示意味
1tunnel tunnel.1 ipv6 is not enabledtunnel.1 で IPv6 が有効になっていないため、IPv6 アドレスは無視されるという警告です。IPv4 だけで使う今回の構成では、このままでも問題ありません
2HIP Data Collection will not take effectGlobalProtect サブスクリプションのライセンスがないため、エージェント設定の HIP データ収集が働かないという警告です。今回は HIP チェックを使わないので、接続には影響しません

1 つ目の警告が出ないようにするには、Network ›› インターフェイス の「トンネル」タブで tunnel.1 を開き、「IPv6」タブで「インターフェイスでの IPv6 の有効化」にチェックを入れて「OK」をクリックします。これで Commit を実行しても、トンネルインタフェースに対する IPv6 の警告は出なくなります。

GlobalProtect クライアントの準備

GlobalProtect アプリをファイアウォールに用意する

端末はポータルから GlobalProtect アプリをダウンロードします。そのために、配布するアプリのバージョンをファイアウォールにダウンロードして、アクティベートしておきます。Device ›› GlobalProtect クライアント を開き、「今すぐチェック」をクリックすると、ダウンロードできるバージョンの一覧が表示されます。

PA-VM(Web インタフェース)画面イメージ
Device ›› GlobalProtect クライアント
バージョンサイズリリース日使用可能アクション
6.0.3155 MB2022/08/02ダウンロード
6.0.1152 MB2022/05/04ダウンロード
6.0.0152 MB2022/02/22ダウンロード
15.2.13232 MB2023/02/22✓検証 エクスポート 2アクティベーション
5.2.13-c418235 MB2023/07/11ダウンロード
5.2.12103 MB2021/05/26ダウンロード
図21 GlobalProtect クライアントの一覧(実際の画面ではなく、ダウンロードしたバージョンをアクティベートするポイントを示したイメージです)
No.表示意味
15.2.13検証で使ったバージョンです。「ダウンロード」をクリックすると、「使用可能」にチェックが付きます
2アクティベーションクリックすると確認のポップアップが出るので「はい」をクリックします。アクティベートしたバージョンが、ポータルから端末に配布されます

端末の接続

端末からの接続は、次の順番で進みます。先にポータルに接続して認証し、ポータルから受け取った設定をもとに、アプリがゲートウェイに接続します。

GlobalProtect アプリPA-VM1ポータルに接続してユーザ名とパスワードを送る認証プロファイル(ローカル DB)で認証2エージェント設定を受け取る接続先ゲートウェイ(外部ゲートウェイ Gateway)3ゲートウェイに接続して認証するゲートウェイでも同じ認証プロファイルで認証4SSL トンネルを確立し、IP を受け取るIP プール 192.168.100.0/24 から払い出し
図22 GlobalProtect アプリが接続するまでの流れ

GlobalProtect アプリをインストールする

ブラウザ(今回は Edge)で https://ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com にアクセスします。この時点では端末が PA-Cert-Authority を信頼していないので証明書エラーが表示されますが、続行するとポータルのログイン画面が表示されます。STEP 1 で作ったユーザでログインします。

ログインすると、GlobalProtect アプリのダウンロードリンクが表示されるので、OS に合ったものを選んで実行します。

Edge(ポータルのページ)画面イメージ
GlobalProtect PortalDownload Windows 32 bit GlobalProtect agent
1 Download Windows 64 bit GlobalProtect agent
 Download Mac 32/64 bit GlobalProtect agent
図23 ポータルのダウンロードページ(実際の画面ではなく、OS に合ったリンクを選ぶポイントを示したイメージです)

インストーラが起動したら、「Next」を順にクリックしてインストールします。インストールが終わると、タスクトレイに GlobalProtect アプリが常駐します。

接続して証明書エラーを確かめる

タスクトレイの GlobalProtect アプリを開き、「ポータルのアドレスを入力してください」の欄にポータルの FQDN(ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com)を入力して「接続」をクリックします。すると、次のようにサーバ証明書のエラーが表示されます。

GlobalProtect アプリ画面イメージ
サーバ証明書エラー
メッセージ証明書に問題が見つかり、ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com の同一性を確認出来ませんでした。
1エラーの詳細The ec2-XXX-XXX-XXX-XXX.ap-northeast-1.compute.amazonaws.com certificate is not signed by a trusted certificate authority.
証明書を表示持続するキャンセル
図24 サーバ証明書エラー(実際の画面ではなく、エラーの理由を示したイメージです)

ファイアウォールのサーバ証明書が、端末の信頼されたルート証明機関にない CA(PA-Cert-Authority)で署名されているため、エラーになります。ここでは「キャンセル」で閉じて、端末に CA の証明書を入れます。

認証局の証明書を端末に入れる

Device ›› 証明書の管理 ›› 証明書 で PA-Cert-Authority を選び、「証明書のエクスポート」をクリックします。ファイルフォーマットは Base64 Encoded Certificate (PEM) を選び、「秘密鍵のエクスポート」にはチェックを入れずに「OK」をクリックします。証明書ファイルがダウンロードされます。

秘密鍵は書き出さない

端末に必要なのは、サーバ証明書を検証するための CA の証明書だけです。PKCS12 などで CA の秘密鍵ごと書き出して端末に入れると、その端末から PA-Cert-Authority の名前で証明書を発行できてしまいます。CA の秘密鍵はファイアウォールの外に出さないようにします。

ダウンロードした証明書ファイルを端末にコピーし、次の手順で入れます。

手順操作
1証明書ファイルを右クリックして「証明書のインストール」をクリックします
2証明書のインポート ウィザードで、保存場所に「ローカル コンピューター」を選んで「次へ」をクリックします
3「証明書をすべて次のストアに配置する」を選び、証明書ストアに「信頼されたルート証明機関」を指定して「次へ」をクリックします
4確認画面で「完了」をクリックし、インポートが完了したことを確かめます

証明書がローカル コンピューターに入ったかを確かめます。「ファイル名を指定して実行」で certlm.msc と入力すると、ローカル コンピューターの証明書を確認できます。「信頼されたルート証明機関」の下に、PA-Cert-Authority があることを確かめます。

certlm(証明書 – ローカル コンピューター)画面イメージ
証明書 – ローカル コンピューター ›› 信頼されたルート証明機関 ›› 証明書
発行先発行者
Microsoft Time Stamp Root Cert…Microsoft Time Stamp Root Certifi…
NO LIABILITY ACCEPTED, (c)97 …NO LIABILITY ACCEPTED, (c)97 Ver…
1PA-Cert-AuthorityPA-Cert-Authority
Symantec Enterprise Mobile Ro…Symantec Enterprise Mobile Root …
図25 信頼されたルート証明機関(実際の画面ではなく、PA-Cert-Authority が入ったことを確かめるポイントを示したイメージです)

もう一度接続する

タスクトレイの GlobalProtect アプリを開いて「接続」をクリックし、ユーザ名とパスワードを入力してサインインします。今度は証明書エラーが出ずに接続済みになります。これで SSL-VPN 接続は完了です。

GlobalProtect アプリ画面イメージ
1状態接続済み
企業ネットワークに安全に接続されました
2ゲートウェイGateway
図26 接続後の GlobalProtect アプリ(実際の画面ではなく、確かめるポイントを示したイメージです)
No.表示意味
1接続済みゲートウェイとのトンネルが確立しています
2Gateway接続中のゲートウェイ。STEP 11 で外部ゲートウェイに付けた名前が表示されます

端末で ipconfig を実行すると、GlobalProtect の仮想アダプタに、IP プール 192.168.100.0/24 から払い出されたアドレスが付いていることがわかります。

コマンド プロンプト(ipconfig)画面イメージ
アダプター項目値
1イーサネット 2IPv4 アドレス192.168.100.1
イーサネット 2サブネット マスク255.255.255.255
イーサネット 2デフォルト ゲートウェイ0.0.0.0
イーサネットIPv4 アドレスなど(伏せています)
図27 ipconfig の結果(実際の画面ではなく、IP プールのアドレスが付いたことを示したイメージです)

ログ確認

GlobalProtect のログを見る

Monitor ›› ログ ›› GlobalProtect を開くと、GlobalProtect に関するログを確認できます。

PA-VM(Web インタフェース)画面イメージ
Monitor ›› ログ ›› GlobalProtect
ポータル/ゲートウェイ状態ステージイベント送信元ユーザー送信元地域
GP-Gatewaysuccesshost-infogateway-hip-check(伏せています)JP
GP-Gatewaysuccesstunnelgateway-tunnel-latency(伏せています)JP
GP-Gatewaysuccesshost-infogateway-hip-check(伏せています)JP
GP-Gatewaysuccesstunnelgateway-tunnel-latency(伏せています)JP
2GP-Gatewaysuccessconnectedgateway-connected(伏せています)JP
1GP-Gatewaysuccesstunnelgateway-setup-ssl(伏せています)JP
図28 GlobalProtect のログ(実際の画面ではなく、接続の流れを読むポイントを示したイメージです。新しいログが上です)
No.表示意味
1gateway-setup-sslゲートウェイとの SSL トンネルを設定しています。IPSec を無効にしたので、SSL で張られています
2gateway-connectedゲートウェイへの接続が完了しました。その後の行は、接続中に記録された HIP やトンネルの遅延のイベントです

接続中のユーザを確かめる

いまどのユーザが接続しているかは、GUI でも CLI でも確認できます。GUI では、Network ›› GlobalProtect ›› ゲートウェイ で GP-Gateway の「リモート ユーザー」をクリックします。

PA-VM(Web インタフェース)画面イメージ
User Information – GP-Gateway ›› 現在のユーザー
ユーザーコンピュータークライアントプライベート IP公開 IPトンネル タイプ
(伏せています)(伏せています)Microsoft Windows 10 Enterprise Evaluation , 64-bit1192.168.100.1(伏せています)2SSL
図29 リモート ユーザーの画面(実際の画面ではなく、接続中のユーザを確かめるポイントを示したイメージです)
No.表示意味
1プライベート IPIP プールから払い出されたアドレス。端末の ipconfig と同じです
2トンネル タイプSSL。IPSec ではなく SSL でトンネルを張っています

CLI では、次のコマンドで確認できます。

PA-VM

admin@PA-VM> show global-protect-gateway current-user

GlobalProtect Gateway: GP-Gateway (1 users)
Tunnel Name          : GP-Gateway-N
        Domain-User Name           : \(伏せています)
        Computer                   : (伏せています)
        Primary Username           : (伏せています)
        Region for Config          : JP
        Source Region              : JP
        Client                     : Microsoft Windows 10 Enterprise Evaluation , 64-bit
        VPN Type                   : Device Level VPN
        Host ID                    : xxx
        Client App Version         : 5.2.13-48
        Mobile ID                  : 
        Client OS                  : Windows
        Private IP                 : 192.168.100.1
        Private IPv6               : ::
        Public IP (connected)      : xxx.xxx.xxx.xxx
        Public IPv6                : ::
        Client IP                  : xxx.xxx.xxx.xxx
        ESP                        : removed
        SSL                        : exist
        Login Time                 : xxx.xx 03:29:24
        Logout/Expiration          : xxx.xx 02:29:24
        TTL                        : 2591686
        Inactivity TTL             : 10788
        Request - Login            : 2023-xx-xx 03:29:24.271 (1698575364271),  xxx.xxx.xxx.xxx
        Request - GetConfig        : 2023-xx-xx 03:29:24.513 (1698575364513),  xxx.xxx.xxx.xxx
        Request - SSLVPNCONNECT    : 2023-xx-xx 03:29:24.726 (1698575364726),  xxx.xxx.xxx.xxx
表示意味
GP-Gateway (1 users)ゲートウェイ GP-Gateway に 1 ユーザが接続しています
Client App Version端末の GlobalProtect アプリのバージョン(5.2.13-48)
Private IPIP プールから払い出されたアドレス(192.168.100.1)
ESP : removed
SSL : exist
IPSec(ESP)のトンネルはなく、SSL のトンネルで接続しています

ポリシー制御

接続したユーザは SSL-VPN ゾーンに所属します。トンネルの分割を設定していないので、端末のインターネット向けの通信もトンネルを通って PA-VM に届きます。SSL-VPN ゾーンからインターネットへ出られるように、NAT とセキュリティポリシーを追加します。

NAT ポリシーを追加する

SSL-VPN ゾーンから Untrust ゾーンへの通信を、送信元 NAT します。Policies ›› NAT で「追加」をクリックし、次の NAT ポリシーを追加します。

PA-VM(Web インタフェース)画面イメージ
Policies ›› NAT
名前送信元ゾーン宛先ゾーン送信元アドレス宛先アドレスサービス送信元変換
dst-nat-linuxUntrustUntrustanyLinux_VIPanynone
linux_src_natTrustUntrustLinux_RealIPanyanystatic-ip
1SSL-VPN-to-UntrustSSL-VPNUntrustanyanyany2dynamic-ip-and-port
ethernet1/1
図30 NAT ポリシーの一覧(実際の画面ではなく、追加したポリシーを示したイメージです。グレーの行はほかの検証で使っているポリシーです)
No.項目設定内容
1送信元/宛先ゾーン送信元ゾーン SSL-VPN、宛先ゾーン Untrust。VPN 端末からインターネットへの通信が対象です
2送信元変換dynamic-ip-and-port で、ethernet1/1 のアドレスに変換します。IP プールのアドレス(192.168.100.0/24)のままではインターネットから戻りの通信が届かないためです

セキュリティポリシーを追加する

SSL-VPN ゾーンから Untrust ゾーンへの通信を許可します。Policies ›› セキュリティ で「追加」をクリックし、次のセキュリティポリシーを追加します。

PA-VM(Web インタフェース)画面イメージ
Policies ›› セキュリティ
名前送信元ゾーン宛先ゾーンアプリケーションサービスアクション
1SSL-VPN-to-UntrustSSL-VPNUntrustany2application-default 許可
Trust_to_UntrustTrustUntrustanyapplication-default 許可
LinuxUntrustTrustanyany 許可
ALLDENYUntrustTrustanyapplication-default 拒否
intrazone-defaultany(intrazone)anyany 許可
interzone-defaultanyanyanyany 拒否
図31 セキュリティポリシーの一覧(実際の画面ではなく、追加したポリシーを示したイメージです。緑:許可、赤:拒否)
No.項目設定内容
1SSL-VPN-to-Untrust送信元ゾーン SSL-VPN、宛先ゾーン Untrust、アクションは許可。いちばん上に置きます
2アプリケーション/サービスアプリケーション any、サービス application-default。どのアプリケーションも、そのアプリケーションの標準のポートであれば許可します

Commit を実行し、端末からインターネットへ接続します。端末の DNS は端末ローカルで設定した DNS サーバを使い、インターネットへアクセスできるようになります。

トラフィックログで確かめる

Monitor ›› ログ ›› トラフィック を確認すると、VPN のユーザが、プールのアドレス 192.168.100.1 からインターネットへアクセスしていることがわかります。送信元ゾーンは SSL-VPN、宛先ゾーンは Untrust です。

PA-VM(Web インタフェース)画面イメージ
Monitor ›› ログ ›› トラフィック
送信元送信元ユーザー宛先宛先ポートアプリケーションアクションルール
1192.168.100.12(伏せています)(伏せています)443sslallow3SSL-VPN-to-Untrust
192.168.100.1(伏せています)(伏せています)443sslallowSSL-VPN-to-Untrust
192.168.100.1(伏せています)(伏せています)443linkedin-baseallowSSL-VPN-to-Untrust
図32 トラフィックログ(実際の画面ではなく、VPN ユーザの通信を確かめるポイントを示したイメージです)
No.表示意味
1送信元IP プールから払い出された端末のアドレス(NAT 前のアドレス)です
2送信元ユーザーGlobalProtect でログインしたユーザ名が表示されます。SSL-VPN ゾーンでユーザー ID を有効にしたので、通信とユーザが結びついています
3ルールSTEP 21 の SSL-VPN-to-Untrust で許可されています

まとめ

GlobalProtect をローカルユーザで動かすために作った設定は、次のとおりです。

設定場所今回の値
ユーザ/グループDevice ›› ローカル ユーザー データベースSSL-VPN-Users-Group
認証プロファイルDevice ›› 認証プロファイルSSL-VPN-Auth-Profile(ローカル データベース、許可リストにグループ)
証明書Device ›› 証明書の管理 ›› 証明書PA-Cert-Authority(CA)、GP-Portal-Gateway-Cert(CN と SAN に FQDN)
SSL/TLS サービスプロファイルDevice ›› 証明書の管理GP-SSL-Profile
トンネルインタフェースNetwork ›› インターフェイス ›› トンネルtunnel.1(ゾーン SSL-VPN、ユーザー ID 有効)
ゲートウェイNetwork ›› GlobalProtect ›› ゲートウェイGP-Gateway(SSL、IP プール 192.168.100.0/24)
ポータルNetwork ›› GlobalProtect ›› ポータルGP-Portal(外部ゲートウェイ Gateway)
アプリDevice ›› GlobalProtect クライアント5.2.13 をアクティベート
ポリシーPolicies ›› NAT/セキュリティSSL-VPN → Untrust の送信元 NAT と許可

自己署名の CA を使う場合は、端末に CA の証明書(秘密鍵は含めない)を信頼されたルート証明機関として入れておく必要があります。また、トンネルの分割を設定しないと端末の通信はすべてトンネルを通るので、インターネットへ出すための NAT とセキュリティポリシーも忘れずに設定します。

コメント