読む前にこの記事のポイントを音声で確認できます。この音声は本記事をもとにAIツール(NotebookLM)で自動生成したもので、発音や言い回しが不自然な箇所や、内容の誤りが含まれる可能性があります。理解の補助としてご利用ください。
GlobalProtect では、HIP(Host Information Profile:ホスト情報プロファイル)を使って、VPN 接続したユーザのアクセスを端末の状態で制御できます。端末は VPN 接続のときに自分の情報を Paloalto に送り、Paloalto はその情報を HIP で定義した条件と照らし合わせて、セキュリティポリシーに使います。
この記事では、Windows ファイアウォールが有効になっている端末だけ、インターネットへの通信を許可します。
- 端末側で、GlobalProtect が集めている HIP 情報を確かめる
- HIP オブジェクトと HIP プロファイルを作り、セキュリティポリシーに適用する
- Windows ファイアウォールの有効・無効で通信が変わることを確かめる
PAN-OS 9.0.9-h1 で検証しています。PAN-OS 9.0 は 2022年3月1日でサポートが終了(End-of-Life)しています。画面の項目の並びや表記は、バージョンによって変わります。
HIP のチェックを行うゲートウェイには、GlobalProtect のサブスクリプションライセンスが必要です。
GlobalProtect の構成は次の記事と同じなので、先にお読みいただくことをおすすめします。
>> 参考記事 : GlobalProtectの設定(ローカルユーザ)と動作確認 PANOS9.0.9-h1.xfr
HIP でチェックできる情報
HIP では、次のような端末の情報をチェックできます。HIP オブジェクトの設定画面にも、同じ分類のタブが並んでいます。
- 全般(ホスト名など)
- モバイルデバイス
- パッチ管理
- ファイアウォール
- アンチマルウェア
- ディスクバックアップ
- ディスク暗号化
- データ損失防止
- 証明書
- カスタムチェック
取得できる情報の詳細は、次のドキュメントを参照してください。
>> What Data Does the GlobalProtect App Collect? – GlobalProtect Administrator’s Guide
HIP のしくみ
Paloalto 側では、3つの設定を組み合わせます。HIP オブジェクトで「何を調べるか」を決め、HIP プロファイルでオブジェクトをまとめ、セキュリティポリシーの条件として使います。
端末側の事前確認
まず、端末の GlobalProtect アプリが集めている HIP 情報を見ます。GlobalProtect アプリの右上のメニュー(≡)から「設定」を開き、「ホスト プロファイル」タブをクリックします。
この記事の画面は、実際の画面ではなく、検証時の画面から設定する項目(見るポイント)を抜き出して描いたイメージです。バージョンによって、項目の並びや表記は変わります。
| 分類▾ anti-malware Windows Defender ▾ disk-backup Windows Backup and Restore Windows File History ▾ disk-encryption BitLocker Drive Encryption ▾ firewall 1Windows Firewall |
2Product Name: Windows Firewall Version: 10.0.16299.15 Vendor: Microsoft Corporation Enabled: yes |
firewall の Windows Firewall を選ぶと、右側に詳細が表示されます。この端末では、Windows Firewall が有効(Enabled: yes)になっていることがわかります。この情報を使って、Windows ファイアウォールの有効・無効を調べる HIP の設定を作ります。
HIP オブジェクトを作る
HIP オブジェクトを追加する
Objects ›› GlobalProtect ›› HIP オブジェクト で「追加」をクリックします。「全般」タブで名前を入力します。今回は Windows-Firewall-Check にしました。
ファイアウォールの条件を設定する
「ファイアウォール」タブに移り、「ファイアウォール」と「インストール済み」にチェックを入れて、ベンダーの「追加」をクリックします。ベンダーの編集画面で、ベンダーに Microsoft Corporation を選び、製品の「追加」から Windows Firewall を選んで OK をクリックします。最後に、右上の「有効」で yes を選びます。
| 1名前 | Windows-Firewall-Check |
| 2ファイアウォール | ☑ ファイアウォール ☑ インストール済み | ||||
| 3ベンダー/製品 |
| ||||
| 4有効 | 選択肢None no yesnot-available | ||||
| ☐ ベンダーの除外 |
| No. | 項目 | 設定内容 |
|---|---|---|
| 1 | 名前 | 任意の名前です。今回は Windows-Firewall-Check にしました。 |
| 2 | ファイアウォール | 「ファイアウォール」でこの分類のチェックを使い、「インストール済み」でソフトがインストールされていることを条件にします。 |
| 3 | ベンダー/製品 | ベンダーの編集画面で、Microsoft Corporation と Windows Firewall を選びます。ベンダーと製品はプルダウンの一覧から選べます。 |
| 4 | 有効 | yes を選び、ファイアウォールが有効になっていることを条件にします。 |
| 5 | OK | OK をクリックして保存します。 |
保存すると、HIP オブジェクトの一覧に登録されます。
| 名前 | カテゴリ | 基準 | ベンダー |
|---|---|---|---|
| Windows-Firewall-Check | firewall | is-enabled yes is-installed yes | Microsoft Corporation: Windows Firewall |
HIP プロファイルを作る
作った HIP オブジェクトを、HIP プロファイルにまとめます。Objects ›› GlobalProtect ›› HIP プロファイル で「追加」をクリックします。
名前を入力し(今回は HIP-Check-Win-FW)、「条件の追加」をクリックします。HIP オブジェクト/プロファイル ビルダーに HIP オブジェクトの一覧が表示されるので、Windows-Firewall-Check の「+」をクリックします。右側の「一致」に条件が入ったら、OK をクリックします。
| 1名前 | HIP-Check-Win-FW |
| 3一致 | “Windows-Firewall-Check” |
| ◉ AND○ OR☐ NOT | |||||
| 2HIP オブジェクト |
|
HIP プロファイルでは、複数の HIP オブジェクト(やほかの HIP プロファイル)を AND/OR/NOT で組み合わせられます。たとえば「ファイアウォールが有効、かつアンチマルウェアのリアルタイム保護が有効」のような条件も作れます。
セキュリティポリシーに適用する
SSL-VPN ゾーンからインターネットへのアクセスを許可しているセキュリティポリシー(SSLVPN-to-Internet)を開き、「ユーザー」タブの HIP プロファイルの「追加」から HIP-Check-Win-FW を選んで、OK をクリックします。
| 送信元ユーザー | any | ||
| 1HIP プロファイル | 選択
|
ポリシーの一覧で、SSLVPN-to-Internet の HIP プロファイルの列に HIP-Check-Win-FW が入ったことを確かめて、コミットします。
| 名前 | 送信元 ゾーン | 送信元 ユーザー | HIP プロファイル | 宛先 ゾーン | |
|---|---|---|---|---|---|
| 1 | LAN_to_Internet | LAN | any | any | Internet |
| 2 | Internet_to_LAN | Internet | any | any | LAN |
| 3 | SSLVPN-to-Internet | SSL-VPN | any | 1HIP-Check-Win-FW | Internet |
| 4 | intrazone-default | any | any | any | (intrazone) |
| 5 | interzone-default | any | any | any | any |
HIP プロファイルを条件にするセキュリティポリシーでは、送信元ゾーンで User-ID が有効になっている必要があります。
動作確認
Windows ファイアウォールを無効にして接続する
端末で Windows ファイアウォールをいったん無効にし、GlobalProtect アプリで接続します。VPN 接続そのものは HIP に関係なく成功し、「接続済み」になります。
ping で通信を確かめる
HIP プロファイルを適用したポリシー(インターネットへの通信)を使わせるため、Google の DNS(8.8.8.8)へ ping -t で連続して ping を送ります。Windows ファイアウォールが無効なので HIP プロファイルに一致せず、タイムアウトになります。
C:\Users\(伏せています)>ping 8.8.8.8 -t 8.8.8.8 に ping を送信しています 32 バイトのデータ:1要求がタイムアウトしました。要求がタイムアウトしました。要求がタイムアウトしました。
ゲストまたはパブリック ネットワーク:接続済み推奨設定が使用されていません [推奨設定を使用します]
Windows ファイアウォールを有効にする
この状態で「推奨設定を使用します」をクリックし、Windows ファイアウォールを有効にします。有効にしてしばらくすると、ping の応答が返ってくるようになります。
要求がタイムアウトしました。要求がタイムアウトしました。18.8.8.8 からの応答: バイト数 =32 時間 =113ms TTL=1048.8.8.8 からの応答: バイト数 =32 時間 =50ms TTL=1048.8.8.8 からの応答: バイト数 =32 時間 =51ms TTL=104⋮
ゲストまたはパブリック ネットワーク:接続済みWindows Defender ファイアウォールの状態:有効
HIP マッチのログを確かめる
Monitor ›› ログ ›› HIP マッチ を見ると、端末の情報が HIP プロファイル(HIP-Check-Win-FW)と HIP オブジェクト(Windows-Firewall-Check)に一致したことがわかります。
| 送信元 IPv4 | 送信元ユーザー | マシン名 | OS | HIP | HIP タイプ |
|---|---|---|---|---|---|
| 192.168.100.1 | hirotano | (伏せています) | Windows | 1HIP-Check-Win-FW | profile |
| 192.168.100.1 | hirotano | (伏せています) | Windows | 2Windows-Firewall-Check | object |
ログの詳細を開くと、HIP で受け取った端末の情報(ユーザー、OS、GlobalProtect のバージョン、アンチマルウェアの状態など)を確かめられます。
| 生成済みレポート | 12/29/2020 15:25:28 |
| ユーザー情報 | User: hirotano IP アドレス: 192.168.100.1 |
| ホスト情報 | マシン名:(伏せています) |
| 管理対象 | いいえ |
| OS | Microsoft Windows 10 Pro , 64-bit |
| クライアント バージョン | 5.1.7-20 |
| ネットワーク情報 | (伏せています) |
| |||||||||||
もう一度無効にする
ping の応答が返っている状態で、Windows ファイアウォールをもう一度無効にします。しばらくすると、再びタイムアウトになります。
⋮8.8.8.8 からの応答: バイト数 =32 時間 =53ms TTL=1048.8.8.8 からの応答: バイト数 =32 時間 =56ms TTL=1048.8.8.8 からの応答: バイト数 =32 時間 =44ms TTL=1041要求がタイムアウトしました。要求がタイムアウトしました。要求がタイムアウトしました。
このように、端末の状態をもとに、セキュリティポリシーで通信を制御できます。
まとめ
| 設定 | 場所 | 内容 |
|---|---|---|
| HIP オブジェクト | Objects ›› GlobalProtect ›› HIP オブジェクト | Windows-Firewall-Check(Microsoft Corporation の Windows Firewall がインストール済み・有効) |
| HIP プロファイル | Objects ›› GlobalProtect ›› HIP プロファイル | HIP-Check-Win-FW(一致:”Windows-Firewall-Check”) |
| セキュリティポリシー | Policies ›› セキュリティ | SSLVPN-to-Internet のユーザータブで HIP-Check-Win-FW を指定 |
| 確認 | Monitor ›› ログ ›› HIP マッチ | HIP プロファイル・HIP オブジェクトに一致したかを確認 |
応用として、アンチウイルスソフトのリアルタイム保護が動いていない端末は一部の宛先にだけ通信させ、リアルタイム保護が動いている端末だけ制限をゆるめる、といった制御もできます。
コメント