リバース プロキシ サーバーとは、境界ネットワーク (DMZ (DeMilitarized Zone) またはスクリーン サブネットとも呼ばれる) 内に配置され、インターネットからのリクエストを処理して内部ネットワーク内のコンピューターに転送するコンピューターです。 リバース プロキシ サーバーは、リクエストを転送することで、組織サイトのファイアウォールの内側にあるコンピューターのアイデンティティをマスクするため、インターネット ユーザーによる直接的な攻撃から内部のコンピューターを保護できます。 さらに進んでユーザーの内部ネットワークを外部ユーザーから保護するために、追加のセキュリティ機能をリバース プロキシ サーバーに実装できます。
組織のリバース プロキシ サーバーを使うよう ArcGIS Notebook Server サイトを構成することができます。 これはオプションです。 組織でリバース プロキシを使用していない場合、またはリバース プロキシを使用するよう ArcGIS Notebook Server サイトを構成しない場合は、ポータルへのサイトの構成に進んでください。
リバース プロキシ サーバーへの ArcGIS Notebook Server の追加
組織のリバース プロキシ サーバーは、対応する URL をプロキシ ディレクティブに追加して ArcGIS Web Adaptor と通信するように構成する必要があります。
たとえば、リバース プロキシ サーバーとして Apache を使用している場合は、Apache Web サーバー構成ファイル httpd.conf で、ProxyPass ディレクティブに ArcGIS Web Adaptor の URL を以下のように追加する必要があります。
ProxyPass /notebook https://notebookserver.domain.com/notebook
ProxyPassReverse /notebook https://notebookserver.domain.com/notebook
WebContextURL プロパティの設定
リバース プロキシ サーバーを使用している際に、サイトの URL の末尾がデフォルト文字列 /arcgis (すべて小文字) でない場合は、ArcGIS Notebook Server の WebContextURL プロパティも設定する必要があります。 これにより、ArcGIS Notebook Server はリソースで正しい URL を構築して、エンド ユーザーに送信することができます。
メモ:
WebContextURL プロパティを使用して ArcGIS Notebook Server の URL がその ArcGIS Web Adaptor (/notebook など) に一致するように設定します。
- 管理者権限を持つユーザーとして、https://notebookserver.domain.com:11443/arcgis/admin の ArcGIS Notebook Server Administrator Directory にサイン インします。
- [system] > [properties] > [update] の順にクリックします。
- [Properties] テキスト ボックスに次の JSON を挿入します。ArcGIS Notebook Server の URL は、ユーザーが組織のファイアウォールの外側から参照できる URL に置換します。
{ "WebContextURL": "https://notebookserver.domain.com/notebook" }
- [Update] をクリックします。
- ArcGIS Notebook Server を再起動します。 Windows 上で、[ArcGIS Server] Windows サービスを再起動します。
リバース プロキシ ヘッダーと ArcGIS Notebook Server
リバース プロキシを ArcGIS Web Adaptor と統合する際は、リバース プロキシ サーバーによって送信されるヘッダー内に次のプロパティを設定する必要があります。
X-Forwarded-Host=<FQDN of reverse proxy server>
このプロパティがヘッダーに設定されている場合、ArcGIS Web Adaptor は、そのリバース プロキシ サーバーの URL に一致するリバース プロキシ サーバーにリクエストを返します。 たとえば、ArcGIS Notebook Server Services Directory (https://reverseproxy.domain.com/arcgis/rest/services) に対するリクエストは、同じ URL としてクライアントに返されます。
X-Forwarded-Host ヘッダーが設定されていない場合、ArcGIS Web Adaptor は、リクエストが転送された内部コンピューターの URL を返すことがあります (たとえば、https://reverseproxy.domain.com/arcgis/rest/services ではなく https://notebookserver.domain.com/arcgis/rest/services)。 このような場合は、クライアントがこの URL にアクセスできなくなる (一般的に、ブラウザーの 404 エラーとして知られている) ため、問題が起こりがちになります。 また、クライアントはその内部コンピューターについての情報を一部入手することにもなります。
クライアントと ArcGIS Web Adaptor 間の通信のトラブルシューティングを行う際は、リバース プロキシ サーバーで X-Forwarded-Host ヘッダー プロパティを設定することをお勧めします。このプロパティの有無が通信障害の一般的な原因であるからです。 このヘッダーの設定方法は、ユーザーのリバース プロキシ サーバーの実装によって異なります。 たとえば、以下のように Apache は ProxyPreserveHost On ディレクティブをその構成に含めることでこれを実施します。
...
ProxyPreserveHost On
ProxyPass /notebook https://notebookserver.domain.com/notebook
ProxyPassReverse /notebook https://notebookserver.domain.com/notebook
...
元のホストのヘッダーを渡す方法については、ユーザーのリバース プロキシ サーバーの製品ドキュメントをご参照ください。