Настройка обратного прокси с помощью ArcGIS Mission Server
Обратный прокси-сервер – это компьютер, установленный в периметре сети (в так называемой демилитаризованной зоне [DMZ] или промежуточной подсети), который обрабатывает запросы из интернета и перенаправляет их на компьютеры внутренней сети. Перенаправляя запросы, обратный прокси-сервер маскирует идентичность компьютеров, находящихся за брандмауэром организации, защищая таким образом внутренние компьютеры от прямых атак со стороны пользователей интернета. На обратном прокси-сервере можно реализовать дополнительные функции безопасности, позволяющие еще больше защитить внутреннюю сеть от пользователей извне.
Если вы используете обратный прокси-сервер с функцией проверки работоспособности, рекомендуем вам использовать точку доступа проверки работоспособности ArcGIS Mission Server, чтобы определить, может ли данный сайт получать запросы. Это используется, чтобы быстро определить, нет ли на сайте аппаратного или программного сбоя. Для того чтобы это сделайте, перейдите, например, к https://machine.domain.com:20443/arcgis/rest/info/healthcheck.
Примечание:
Начиная с версии Enterprise 10.9, администраторы могут легче настраивать Apache HTTPD с ArcGIS Mission Server. Теперь администраторы могут сгенерировать файл конфигурации прокси-сервера Apache через конечную точку «Создать конфигурацию прокси» в Admin API.
Создание конфигурации прокси
Теперь администраторы могут настраивать Apache HTTPD через ArcGIS Mission Server Admin API.
Войдите в ArcGIS Mission Server Administrator Directory по адресу https://machine.domain.com:20443/arcgis/admin/proxyGen от имени пользователя с правами администратора.
Введите значение Top Context вашего обратного прокси-сервера, например, ввод
topcontextприведет к прокси-директивам, которые будут перенаправлять запросы наhttps://my.reverse.proxy/topcontext. Этот контекст будет использоваться для написания директив прокси и маршрутизации запросов соответствующим образом на основе протокола запросов и контекста.Поставьте отметку Set Context URL для автоматической установки соответствующих ArcGIS Mission Server
WebContextURLи системных свойствWebSocketContextURLпри отправке запроса.Для Proxy FQDN введите полное доменное имя (FQDN) вашего обратного прокси-сервера, например,
my.reverse.proxy, что приведет к прокси-директивам, которые будут перенаправлять запросы наhttps://my.reverse.proxy/topcontext.Для Формата выберите выходной.
Выходной формат по умолчанию — это
html, однако вы можете выбрать выводить файл конфигурации какjsonилиfile.Щелкните Подтвердить.
Вы успешно создали файл конфигурации Apache HTTPD и задали правильные системные свойства
ContextURL. Затем вам нужно будет прочитать информацию, отображаемую в этом файле, и при необходимости применить ее к вашему прокси-серверу Apache HTTPD. Для этого обратитесь к документации соответствующего дистрибутива.
Добавьте ArcGIS Mission Server на ваш обратный прокси-сервер вручную
Вы можете настроить обратный прокси-сервер вашей организации для прямого сообщения с ArcGIS Mission Server путем добавления соответствующего URL-адреса к директивам прокси.
Чтобы настроить Apache HTTP Server в качестве обратного прокси-сервера, включите следующие модули Apache: mod_ssl, mod_proxy, mod_proxy_http и mod_proxy_wstunnel. Чтобы включить модули Apache см. документацию по Apache для получения сведений о настройке на выбранной платформе, например:
LoadModule ssl_module modules/mod_ssl.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
Чтобы выполнить конфигурацию Apache HTTP Server в качестве обратного прокси, необходимо настроить комбинацию директив ProxyPass и ProxyPassMatch, а также задать корректные настройки SSL. ArcGIS Mission Server использует HTTPS; в результате вам также нужно настроить SSL Apache HTTP-сервера так, чтобы он использовал тот же сертификат, загруженный в ArcGIS Mission Server:
##
## SSL Virtual Host Context
##
<VirtualHost _default_:443>
## Enable Proxy for SSL
SSLProxyEngine on
## If using a self-signed certificate on ArcGIS Mission Server, disable strict
## certificate verification
SSLProxyVerify none
## Proxy ArcGIS Mission Server URLs to the proper backend ports
## The order of these directives are important.
ProxyPass /topcontext/missions/ wss://machine.domain.com:20301/arcgis/missions/ disablereuse=On
ProxyPass /topcontext/ https://machine.domain.com:20443/arcgis/
ProxyPassReverse /topcontext/ https://machine.domain.com:20443/arcgis/
## Use the same SSL Certificate and Key as ArcGIS Mission Server
## (adjust path to your specific certificate locations)
SSLCertificateFile /path/to/arcgis/mission/<server_cert>.pem
SSLCertificateKeyFile /path/to/arcgis/mission/<private_key>.pem
## End of ArcGIS Mission Server reverse proxy config https://machine.domain.com:20443/arcgis/
Чтобы ArcGIS Mission Server правильно создавал WebSocket коммуникации с клиентами, необходимо установить системные свойства ArcGIS Mission Server WebContextURL и WebSocketContextURL. Это позволит ArcGIS Mission Server построить корректные URL-адреса для всех ресурсов, которые он направляет конечному пользователю. Для изменения свойств WebContextURL и WebSocketContextURL выполните следующее:
Войдите в ArcGIS Mission Server Administrator Directory по адресу https://machine.domain.com:20443/arcgis/admin от имени пользователя с правами администратора.
Щёлкните система > свойства > обновить.
В текстовом окне Свойства вставьте следующий JSON, заменив собственный URL ArcGIS Mission Server, который видят пользователи за пределами брандмауэра вашей организации.
{ "WebContextURL": "https://machine.domain.com/mygis", "WebSocketContextURL":"wss://machine.domain.com/mygis" }Щелкните Обновить.