セキュアなプライベート アクセス(ZPA)
外部ドメインと内部ドメインが異なる場合のブラウザーアクセスアプリケーションの定義
以下のガイドでは、異なる外部および内部ドメインを利用するブラウザーアクセスアプリケーションを定義するための方法と要件を提供します。
必要な条件
いずれの方法に関しても、以下の前提条件を適用します。
- アプリケーションの内部完全修飾ドメイン名(FQDN)は、例えば、internalweb.example1.comのように適切に命名する必要があり、App Connectorは内部DNSを介してそのホスト名に解決する必要があります。
- アプリケーションの外部FQDNは、externalweb.example2.comのように、適切な名前を付ける必要があります。アプリケーションの内部および外部のFQDNは、類似した名前を使用するのが理想的です。ただし、次のようにしても機能します。
- スプリットDNS:ドメインとトップレベル ドメインは同じですが、ホスト名は異なります。
- ドメインとトップレベルドメインが異なる、セパレートDNS。
- 外部FQDN (ワイルドカード証明書を使用する場合は、webapp.external.example.comや*.external.example.comなど)のSSL証明書を作成する必要があります。SSL証明書には、次のものが含まれている必要があります。
- CN=[外部FQDN]
- SAN=[内部FQDN]
詳しくは、ブラウザーアクセス(Webサーバ)証明書についてとブラウザーアクセスアプリケーションでのワイルドカード証明書の使用を参照してください。
- Webサーバーがマルチホームで、内部FQDNに一致するHostヘッダーを期待している場合、ZPAは外部FQDNを変換しません。そのため、WebサーバーがHostヘッダーに対応するように設定されている場合は、外部FQDNを追加ヘッダーとして追加する必要があります。
- 内部Webサーバは、オブジェクトがリンクされたページを相対URLで提供する必要があります(例:HREF="/filename.ext")。絶対URLはサポートされていません(例:HREF="http://foo.example2.com/file.ext "またはHREF="http://172.16.1.1/file.ext")。
- 内部Webサーバーはシングルテナントでなければなりません。
ブラウザーアクセスアプリケーションを定義する方法
アプリケーションが内部ホスト名と異なる外部アドバタイズDNSホスト名を使用している場合に、ブラウザーアクセスを定義するには、次のいずれかの方法を使用する必要があります。
- 方法1:動的サーバー検出を無効にし、ターゲットサーバーを手動で定義する - この方法は複数のWebサーバーをサポートし、外部の負荷分散は必要ありません。
- 上記方法1によるZPAの設定について、詳しくはこちらをご覧ください。
方法1を使用してZPAを設定するには、[動的サーバ検出]を無効にしてから、サーバを手動で定義する必要があります。
- [構成とコントロール]>[プライベート インフラストラクチャー]>[App Connector管理]>[サーバー]に移動します。
- サーバーの追加 をクリックします。
- [サーバの追加]のウィンドウで:
- ステータス:[有効]を選択します。
- ドメインとIPアドレス:内部ホスト名のFQDNを入力します(例:webapp.internal.example.com)
同じアプリケーションをサポートするWebサーバが複数ある場合(Webapp1、Webapp2など)、ZPA Admin Portalで内部FQDNごとにサーバを追加する必要があります。
- 保存 をクリックします。
- [構成とコントロール]>[プライベート インフラストラクチャー]>[App Connector管理]>[サーバー グループ]に移動します。
- [サーバー グループの追加 ]をクリックします。
- [サーバグループの追加]ウィンドウでは次の操作が行われます。
- ステータス:[有効]を選択します。
- 動的サーバー検出:[オフ]を選択します。
- サーバ;上記の手順3で以前に追加した新しいサーバを選択します。複数のサーバ(例:webapp1、webapp2など)を追加した場合は、必ずすべてのサーバをグループに含めてください。
- App Connectorグループ:内部WebサーバーにアクセスできるApp Connectorグループを選択します。
- 保存 をクリックします。
- [リソース管理]>[アプリケーション管理]>[Application Segments]に移動します。
- [Add Application Segment]をクリックし、内部DNSで関連付けた外部FQDNを使用し、適切なポート番号を適用したブラウザーアクセス用のWebアプリケーションを定義します。
- [アプリケーション]の下に、Webアプリケーションに関連する外部FQDNを入力します(例:webapp.external.example.com)。
- [ブラウザーアクセス]のチェックボックスを選択し、以下の手順を実行します。
- ドロップダウンメニューから、適切なSSL証明書を選択します。証明書は、外部FQDN(例:webapp.external.example.comまたは*.external.example.com)と一致しなければなりません。詳しくは、ブラウザーのアクセス(Webサーバ)証明書についてとブラウザーのアクセスアプリケーションにワイルドカード証明書を使用するを参照してください。
- プロトコルの場合は[HTTPS]を選択します。デフォルトでは、ポート443がHTTPSに適用されます。適用されない場合は、内部 Web アプリケーションが提供される適切なポート番号に変更してください。
- [Use Untrusted Certificates]が選択されていることを確認します。
ブラウザーアクセスに複数のWebアプリケーションを定義する必要がある場合(例:webapp1.external.example.com、webapp2.external.example.comなど)、[Add More]をクリックし、上記の手順i~iiiを繰り返してください。- [TCP Port Ranges]で、適切なポートレンジを指定します。
- [1 Define Applications]タブで設定を完了し、[次へ]をクリックします。
- [2 Segment Group]タブで設定を完了し、[次へ]をクリックします。
- [3 Server Groups]タブで、[Select Server Group]、ドロップダウンメニューから上記手順7で作成したサーバグループを選択し、[次へ]をクリックします。
- [5 Review]タブでアプリケーションセグメントの構成設定を確認し、[6 Policiesタブで必要に応じてポリシーを確認および編集します。
- 上記の手順10aで定義したFQDNのCNAMEを公開します。
閉じる
これで、ユーザーは、適用されたポリシーに基づいて、アプリケーションセグメント内で定義したアプリケーションにアクセスできるようになります。したがって、ユーザーのためにアクセスポリシーを適宜追加または更新していることを確認してください。
- 上記方法1によるZPAの設定について、詳しくはこちらをご覧ください。
- 方法2:動的サーバー検出を有効にし、外部FQDNに対して内部DNSでAレコードを手動で定義する-この方法は、Aレコードが参照する単一のIPアドレスの背後に複数のWebサーバーを配置するためにサードパーティ製の負荷分散を使用しない限り、単一のWebサーバーのみをサポートします。
- 上記方法2によるZPAの設定について、詳しくはこちらをご覧ください。
方法2を使用してZPAを設定するには、[動的サーバ検出]を有効にし、DNSで外部FQDNの内部Aレコードを作成する必要があります。
- 内部DNSで、アプリケーションをホストしている内部WebサーバのIPアドレスまたはロードバランサー仮想IPアドレス(VIP)を指す内部アプリケーションホスト名(例:webapp.external.example.com)用のAレコードを作成します。
- ZPA管理ポータルで、[構成とコントロール]>[プライベート インフラストラクチャー]>[App Connector管理]>[サーバー グループ]に移動します。
- [サーバー グループの追加 ]をクリックします。
- [サーバグループの追加]ウィンドウでは次の操作が行われます。
- ステータス:[有効]を選択します。
- 動的サーバー検出:[オン]を選択します。
- App Connector Groups:内部WebサーバーまたはロードバランサVIPにアクセスできるApp Connectorグループを選択します。
- 保存 をクリックします。
- [リソース管理]>[アプリケーション管理]>[Application Segments]に移動します。
- [Add Application Segment]をクリックし、内部DNSで関連付けた外部FQDNを使用し、適切なポート番号を適用したブラウザーアクセス用のWebアプリケーションを定義します。
- [アプリケーション]の下に、Webアプリケーションに関連する外部FQDNを入力します(例:webapp.external.example.com)。
- [ブラウザーアクセス]のチェックボックスを選択し、以下の手順を実行します。
- ドロップダウンメニューから、適切なSSL証明書を選択します。証明書は、外部FQDN(例:webapp.external.example.comまたは*.external.example.com)と一致しなければなりません。詳しくは、ブラウザーのアクセス(Webサーバ)証明書についてとブラウザーのアクセスアプリケーションにワイルドカード証明書を使用するを参照してください。
- プロトコルの場合は[HTTPS]を選択します。デフォルトでは、ポート443がHTTPSに適用されます。適用されない場合は、内部 Web アプリケーションが提供される適切なポート番号に変更してください。
- [Use Untrusted Certificates]が選択されていることを確認します。
ブラウザーアクセスに複数のWebアプリケーションを定義する必要がある場合(例:webapp1.external.example.com、webapp2.external.example.comなど)、[Add More]をクリックし、上記の手順i~iiiを繰り返してください。- [TCP Port Ranges]で、適切なポートレンジを指定します。
- [1 Define Applications]タブで設定を完了し、[次へ]をクリックします。
- [2 Segment Group]タブで設定を完了し、[次へ]をクリックします。
- [3 Server Groups]タブで、[Select Server Group]、ドロップダウンメニューから上記の手順4で作成したサーバグループを選択し、[次へ]をクリックします。
- [5 Review]タブでアプリケーションセグメントの構成設定を確認し、[6 Policiesタブで必要に応じてポリシーを確認および編集します。
- 上記の手順7aで定義したFQDNのCNAMEを公開します。
閉じる
これで、ユーザーは、適用されたポリシーに基づいて、アプリケーションセグメント内で定義したアプリケーションにアクセスできるようになります。したがって、ユーザーのためにアクセスポリシーを適宜追加または更新していることを確認してください。
- 上記方法2によるZPAの設定について、詳しくはこちらをご覧ください。