【Paloalto】GlobalProtectの設定(ActiveDirectory連携)と動作確認 PANOS9.0.9-h1.xfr

Paloalto では、GlobalProtect という SSL-VPN の機能で、リモートのユーザに VPN 接続を提供できます。前回の記事では Paloalto のローカルデータベースでユーザを認証しましたが、この記事では Active Directory に登録されているユーザで認証します。

ドメインコントローラ(ドメイン名 hirotanoblog.local、アカウント hirotano)は構築済みです。ユーザ認証に関わる変更点だけを説明するので、先に次の記事をご覧いただくことをおすすめします。

>> 参考記事 : GlobalProtectの設定(ローカルユーザ)と動作確認 PANOS9.0.9-h1.xfr

この記事でわかること
  1. Active Directory 側でバインド用のユーザを用意する
  2. LDAP サーバープロファイルとグループマッピングを設定する
  3. 認証プロファイルを LDAP に切り替え、GlobalProtect で接続を確かめる
検証環境

PAN-OS 9.0.9-h1 で検証しています。PAN-OS 9.0 は 2022年3月1日でサポートが終了(End-of-Life)しています。画面の項目の並びや表記は、バージョンによって変わります。

検証の構成

前回の記事の構成に、Active Directory(ad-1)を加えています。端末はポータルに接続し、Paloalto が Active Directory でユーザを認証したあと、ゲートウェイに接続します。

PaloaltoInternetWindows10GlobalProtectActive Directoryad-1192.168.10.124hirotanoblog.localE1/1 192.168.20.120ポータル/ゲートウェイSSL-VPN ゾーン192.168.100.0/24Internet ゾーンAWS Elastic IP 経由1ポータル接続2ユーザ認証3ゲートウェイを通知4ゲートウェイ接続端末に割り当て192.168.100.1
図1 検証の構成

設定の全体像

Paloalto 側では、Active Directory への接続先を LDAP サーバープロファイルにまとめ、それをグループマッピングと認証プロファイルの両方から参照します。GlobalProtect のポータルとゲートウェイは、前回の記事で作った認証プロファイルをそのまま使うので、認証プロファイルの中身を LDAP に切り替えるだけで済みます。

LDAP サーバープロファイルad-1AD:192.168.10.124:389バインド DN:paloalto@…グループマッピングad1-group-mappingAD のグループを取得対象:domain users認証プロファイルSSL-VPN-Auth-Profileタイプ:LDAPログイン属性:sAMAccountNameGlobalProtectポータルゲートウェイ(前提記事で作成)許可リストのグループサーバープロファイル
図2 設定の関係

バインド用のユーザを作る

Paloalto が Active Directory からユーザやグループの情報を読み取るときに使うアカウント(バインド用のユーザ)を作ります。サーバーマネージャーのツールから「Active Directory ユーザーとコンピューター」を開き、paloalto というユーザを登録します。検証では、このユーザを Server Operators グループにも追加しました。

画面イメージについて

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

Active Directory ユーザーとコンピューター画面イメージ
hirotanoblog.local ›› Users ›› paloalto のプロパティ ›› 所属するグループ
名前Active Directory ドメイン サービス フォルダー
Domain Usershirotanoblog.local/Users
1Server Operatorshirotanoblog.local/Builtin
図3 バインド用ユーザ paloalto の所属グループ(実際の画面ではなく、表示のポイントを示したイメージです)
権限について

LDAP でユーザやグループを読み取るだけなら、通常のドメインユーザ(Domain Users)の権限で足ります。Server Operators は、User-ID のセッション監視で使う権限で、サーバーの停止や再起動もできる強い権限です。本番で付けるときは、本当に必要かを確かめてください。

参照する DNS サーバーを変更する

Paloalto から Active Directory のホスト名を名前解決できるように、参照する DNS サーバーを Active Directory(192.168.10.124)に変更します。Device ›› セットアップ ›› サービス で、「サービス」の歯車をクリックします。

Paloalto 設定画面(Web UI)画面イメージ
Device ›› セットアップ ›› サービス ›› サービス(歯車)
DNS 設定
DNS◉ サーバー○ DNS プロキシ オブジェクト
1プライマリ DNS サーバー192.168.10.124
セカンダリ DNS サーバー 
2OKキャンセル
図4 DNS サーバーの変更(実際の画面ではなく、設定項目のポイントを示したイメージです)

変更前は、プライマリが 8.8.8.8、セカンダリが 8.8.4.4 でした。OK をクリックしてコミットしたあと、CLI で AD-1 の名前解決ができるかを確かめます。

FW-1

admin@FW-1> ping host AD-1.hirotanoblog.local
PING AD-1.hirotanoblog.local (192.168.10.124) 56(84) bytes of data.
64 bytes from 192.168.10.124: icmp_seq=1 ttl=128 time=0.292 ms
64 bytes from 192.168.10.124: icmp_seq=2 ttl=128 time=0.331 ms
64 bytes from 192.168.10.124: icmp_seq=3 ttl=128 time=0.370 ms
64 bytes from 192.168.10.124: icmp_seq=4 ttl=128 time=0.403 ms
64 bytes from 192.168.10.124: icmp_seq=5 ttl=128 time=0.396 ms
64 bytes from 192.168.10.124: icmp_seq=6 ttl=128 time=0.524 ms
64 bytes from 192.168.10.124: icmp_seq=7 ttl=128 time=0.360 ms
64 bytes from 192.168.10.124: icmp_seq=8 ttl=128 time=0.307 ms
64 bytes from 192.168.10.124: icmp_seq=9 ttl=128 time=0.412 ms
^C
--- AD-1.hirotanoblog.local ping statistics ---
9 packets transmitted, 9 received, 0% packet loss, time 8003ms
rtt min/avg/max/mdev = 0.292/0.377/0.524/0.066 ms
admin@FW-1>
補足

Paloalto 自身の名前解決(アップデートサーバーへの接続など)も、変更後の DNS サーバーで行われます。Active Directory の DNS がインターネットの名前を解決できるように、フォワーダーなどの設定を確かめておいてください。

LDAP サーバープロファイルを作る

認証に使う Active Directory(192.168.10.124)を、LDAP サーバープロファイルとして登録します。Device ›› サーバー プロファイル ›› LDAP で「追加」をクリックします。

Paloalto 設定画面(Web UI)画面イメージ
Device ›› サーバー プロファイル ›› LDAP ›› LDAP サーバー プロファイル
1プロファイル名ad-1
2サーバーリスト
名前LDAP サーバーポート
AD-1192.168.10.124389
サーバー設定
3タイプactive-directory
4ベース DNDC=hirotanoblog,DC=local
5バインド DNpaloalto@hirotanoblog.local
パスワード/再入力 パスワード●●●●●●●●
バインドのタイムアウト30
検索のタイムアウト30
再試行間隔60
6SSL/TLS で保護された接続を要求☐
7OKキャンセル
図5 LDAP サーバープロファイル(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1プロファイル名任意の名前です。今回は ad-1 にしました。
2サーバーリスト「追加」で、名前(任意)と Active Directory の IP アドレス 192.168.10.124 を設定します。ポートは 389 です。
3タイプactive-directory を選びます。
4ベース DN一覧から DC=hirotanoblog,DC=local を選びます。
5バインド DN/パスワードActive Directory に問い合わせるアカウントです。paloalto@hirotanoblog.local と、作成時に設定したパスワードを入力します。
6SSL/TLS で保護された接続を要求今回の検証では、チェックを外しています。
7OKOK をクリックすると、一覧に ad-1 が登録されます。
注意

SSL/TLS を使わない LDAP(389番ポート)では、バインド用のパスワードや認証の内容が暗号化されずにネットワークを流れます。本番では、LDAPS(636番ポート)など SSL/TLS で保護された接続を検討してください。

グループマッピングを設定する

Active Directory のユーザとグループの対応を取得するため、グループマッピングを設定します。

グループマッピングを追加する

Device ›› ユーザー ID の「グループ マッピング設定」タブで、「追加」をクリックします。

Paloalto 設定画面(Web UI)画面イメージ
Device ›› ユーザー ID ›› グループ マッピング設定 ›› グループ マッピング(サーバー プロファイル タブ)
1名前ad1-group-mapping
2サーバー プロファイルad-1
更新間隔[60 – 86400]
Domain Setting
3ユーザー ドメインhirotanoblog
Group Objects / User Objects
オブジェクト クラス(Group)group
オブジェクト クラス(User)person
図6 グループマッピングの追加(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1名前任意の名前です。今回は ad1-group-mapping にしました。
2サーバー プロファイル先ほど作った ad-1 を選びます。
3ユーザー ドメインhirotanoblog と入力します。ほかの項目は既定のままです。

コミットして LDAP の接続を確かめる

OK をクリックし、コミットを実行すると、Paloalto は LDAP サーバー(Active Directory)への接続を試みます。Monitor ›› ログ ›› システム で、イベントが connect-ldap-sever のログを見ると、接続が成功したことを確かめられます。

Paloalto 設定画面(Web UI)画面イメージ
Monitor ›› ログ ›› システム
タイプ重大度イベントオブジェクト内容
useridinformational1connect-ldap-sever192.168.10.1242ldap cfg ad1-group-mapping connected to server 192.168.10.124:389, initiated by: 192.168.1.129
図7 LDAP サーバーへの接続ログ(実際の画面ではなく、表示のポイントを示したイメージです)
No.表示意味
1connect-ldap-severLDAP サーバーへの接続を表すイベントです(画面の表記どおり、server ではなく sever と表示されます)。
2内容グループマッピング ad1-group-mapping の設定で、192.168.10.124 の 389番ポートに接続できたことを示しています。

許可リストに含めるグループを選ぶ

もう一度 ad1-group-mapping を開き、「許可リストのグループ化」タブに移ります。左の「使用可能なグループ」で cn=users を開いて cn=domain users を選び、「+」で右の「含まれたグループ」に移します。

Paloalto 設定画面(Web UI)画面イメージ
Device ›› ユーザー ID ›› グループ マッピング設定 ›› ad1-group-mapping ›› 許可リストのグループ化
使用可能なグループ▾ DC=hirotanoblog,DC=local
 ▸ cn=builtin
 ▸ cn=computers
 ▾ cn=users
  cn=domain controllers
  1cn=domain users  cn=enterprise admins
含まれたグループ2hirotanoblog\domain users
OKキャンセル
図8 許可リストのグループ化(実際の画面ではなく、設定項目のポイントを示したイメージです)

OK をクリックして保存します。含まれたグループに入れたグループが、このあと認証プロファイルの許可リストで選べるようになります。

認証プロファイルを LDAP に切り替える

前回、ローカルデータベースのユーザで認証するときに作った認証プロファイル SSL-VPN-Auth-Profile を、LDAP での認証に変更します。Device ›› 認証プロファイル で SSL-VPN-Auth-Profile をクリックします。

認証タブを設定する

Paloalto 設定画面(Web UI)画面イメージ
Device ›› 認証プロファイル ›› SSL-VPN-Auth-Profile ›› 認証タブ
1タイプLDAP
2サーバー プロファイルad-1
3ログイン属性sAMAccountName
パスワード失効の警告7
4ユーザー ドメインhirotanoblog
ユーザー名修飾子%USERINPUT%
図9 認証プロファイルの認証タブ(実際の画面ではなく、設定項目のポイントを示したイメージです)
No.項目設定内容
1タイプローカル データベースから LDAP に変更します。
2サーバー プロファイルad-1 を選びます。
3ログイン属性sAMAccountName と入力します。ユーザが入力したユーザ名を、Active Directory のログオン名(sAMAccountName)と照合します。
4ユーザー ドメインhirotanoblog と入力します。

詳細タブで許可リストを設定する

「詳細」タブに移り、許可リストに hirotanoblog\domain users を選びます。選ぶと、許可リストには cn=domain users,cn=users,dc=hirotanoblog,dc=local と表示されます。OK をクリックしてコミットします。

Paloalto 設定画面(Web UI)画面イメージ
Device ›› 認証プロファイル ›› SSL-VPN-Auth-Profile ›› 詳細タブ
許可リスト
1選択肢許可リストall
hirotano
hirotanoblog\domain usersSSL-VPN-Users-Group
2設定後☑ cn=domain users,cn=users,dc=hirotanoblog,dc=local
アカウントのロックアウト
許容ログイン回数[0 – 10]
ロックアウト時間 (分)0
3OKキャンセル
図10 認証プロファイルの詳細タブ(実際の画面ではなく、設定項目のポイントを示したイメージです)

端末から動作を確かめる

GlobalProtect でサインインする

端末の GlobalProtect アプリから、ユーザ名 hirotano と Active Directory のパスワードでサインインします。ユーザ認証が許可され、「接続済み」になります。

GlobalProtect アプリ(クライアント端末)画面イメージ
サインイン
Portal(ポータル):(伏せています)
ユーザ名:hirotano
パスワード:●●●●●●●●
サインイン後
接続済み接続は安全です
図11 サインインと接続結果(実際の画面ではなく、表示結果のイメージです)

システムログで認証を確かめる

Monitor ›› ログ ›› システム で GlobalProtect 関連のイベント(フィルタ ( subtype eq globalprotect ))を見ると、ユーザ hirotano の認証が成功していることがわかります。下から順に、ポータルでの認証、ゲートウェイでの認証、トンネルの確立と進んでいます。

Paloalto 設定画面(Web UI)画面イメージ
Monitor ›› ログ ›› システム ( subtype eq globalprotect )
イベント内容(抜粋)
4globalprotectgateway-switch-succGlobalProtect gateway client switch to SSL tunnel mode succeeded. User name: hirotano, Private IP: 192.168.100.1.
globalprotectgateway-config-succGlobalProtect gateway client configuration generated. User name: hirotano, …
globalprotectgateway-regist-succGlobalProtect gateway user login succeeded. Login from: (伏せています), … User name: hirotano, …
3globalprotectgateway-auth-succGlobalProtect gateway user authentication succeeded. … User name: hirotano, Auth type: profile, …
2globalprotectportal-config-succGlobalProtect portal client configuration generated. … User name: hirotano, …
1globalprotectportal-auth-succGlobalProtect portal user authentication succeeded. … User name: hirotano, Auth type: profile. …
図12 GlobalProtect のシステムログ。内容は一部を抜き出し、端末の IP アドレスなどは伏せています(実際の画面ではなく、表示のポイントを示したイメージです)
No.イベント意味
1globalprotectportal-auth-succポータルで hirotano の認証に成功しました。
2globalprotectportal-config-succポータルが端末に設定(接続先のゲートウェイなど)を渡しました。
3globalprotectgateway-auth-succゲートウェイで hirotano の認証に成功しました。
4globalprotectgateway-switch-succSSL トンネルに切り替わり、端末に 192.168.100.1 が割り当てられました。

トラフィックログで送信元ユーザを確かめる

端末から任意のサイトにアクセスすると、セキュリティポリシーに従って通信が許可されます。Monitor ›› ログ ›› トラフィック でトラフィックログを見ると、送信元ユーザに認証したユーザ hirotanoblog\hirotano が表示されています。

Paloalto 設定画面(Web UI)画面イメージ
Monitor ›› ログ ›› トラフィック ( addr.src in 192.168.100.1 )
送信元ユーザー送信元
ゾーン
宛先
ゾーン
送信元宛先宛先
ポート
アプリケ
ーション
アク
ション
ルール
1hirotanoblog\hirotanoSSL-VPNInternet192.168.100.152.114.133.60443sslallowSSLVPN-to-Internet
hirotanoblog\hirotanoSSL-VPNInternet192.168.100.18.8.8.853dnsallowSSLVPN-to-Internet
hirotanoblog\hirotanoSSL-VPNInternet192.168.100.18.8.8.853dnsallowSSLVPN-to-Internet
図13 トラフィックログ(実際の画面ではなく、表示のポイントを示したイメージです)

送信元ユーザがわかるので、Active Directory のユーザやグループを条件にしたセキュリティポリシーやログの検索にも使えます。

まとめ

設定場所主な値
バインド用ユーザActive Directory ユーザーとコンピューターpaloalto
DNS サーバーDevice ›› セットアップ ›› サービスプライマリ 192.168.10.124
LDAP サーバープロファイルDevice ›› サーバー プロファイル ›› LDAPad-1(192.168.10.124:389、active-directory)
グループマッピングDevice ›› ユーザー IDad1-group-mapping(含まれたグループ:hirotanoblog\domain users)
認証プロファイルDevice ›› 認証プロファイルSSL-VPN-Auth-Profile(LDAP、ad-1、sAMAccountName、許可リスト:domain users)

参考

コメント