Настройка IBM HTTP Server в качестве обратного прокси-сервера для Rational DOORS Web Access

Сервер IBM HTTP Server можно настроить в качестве обратного прокси-сервера для Rational DOORS Web Access. Обратный прокси-сервер предлагает дополнительный уровень безопасности, защищает серверы HTTP в сети и повышает производительность обработки запросов Secure Sockets Layer (SSL). В случае применения обратного прокси-сервера топологию развертывания при необходимости можно изменить.

Прежде чем начать

  1. Установите Rational DOORS Web Access, но не запускайте компоненты или сервер Rational DOORS Web Access.
  2. Установите IBM HTTP Server.

Об этой задаче

Обратный прокси-сервер - это специальный сервер HTTP, предотвращающий прямой доступ к сервер HTTP с содержимым. Все запросы информации передаются через общедоступный обратный прокси-сервер и перенаправляются частному серверу Rational DOORS Web Access.
Преимущества применения обратного прокси-сервера:
  • Будущие изменения топологии развертывания: в случае применения обратного прокси-сервера можно указать одно имя хоста в общедоступном URL вне зависимости от числа систем и номеров портов приложений. Такой подход позволяет вносить изменения в топологию развертывания в будущем.
  • Защита: обратный прокси-сервер предлагает дополнительный уровень безопасности и защищает серверы HTTP в сети. Брандмауэр, расположенный между обратным прокси-сервером и сервером HTTP, можно настроить для разрешения только запросов HTTP с обратного прокси-сервера.
  • Производительность: обратный прокси-сервер может использовать аппаратный ускоритель SSL, позволяющий повысить производительность обработки запросов SSL.
В этой процедуре выполняются следующие действия:
  1. Подготовьте хранилище ключей SSL.
  2. Внесите изменения в файл httpd.conf.
  3. Запустите IBM HTTP Server.
  4. Запустите компоненты Rational DOORS Web Access.
  5. Запустите сервер Rational DOORS Web Access.

Процедура

  1. Разместите допустимый файл ключей сертификата SSL в доступном расположении в системе.
  2. Для того чтобы настроить IBM HTTP Server для обработки запросов SSL, внесите изменения в файл httpd.conf, расположенный в каталоге conf экземпляра IBM HTTP Server.
    1. Удалите символы комментария из следующих модулей:
      • LoadModule proxy_module modules/mod_proxy.so
      • LoadModule proxy_http_module modules/mod_proxy_http.so
      • LoadModule ibm_ssl_module modules/mod_ibm_ssl.so
    2. Перейдите к разделу конфигурации SSL и укажите сведения о сервере приложений. Помимо стандартных параметров укажите следующие параметры (см. пример для этого шага).
      • SSLProxyEngine
      • ProxyPass
      • ProxyPassReverse
    Прим.: В этом примере конечным пользователям доступен порт прокси-сервера 8443. В зависимости от среды для Apache Tomcat может быть указан другой порт, чтобы избежать конфликтов.
    # Включите порт, принимающий запросы SSL клиента
    Listen 0.0.0.0:8443
    <VirtualHost *:8443>   
    # Директива SSLEnable включает SSL для виртуального хоста.   
    SSLEnable     
    
    # Директива SSLProxyEngine позволяет разрешить применение SSL для соединений через прокси-сервер.   
    # Директива SSLProxyEngine on требуется, если сервер выполняет роль обратного прокси-сервера для ресурса SSL.   
    # Зависит от mod_ibm_ssl.so   
    SSLProxyEngine on    
    
    # Директива SSLProtocolDisable позволяет указать один или несколько протоколов
    # SSL, которые клиенту запрещено использовать для конкретного виртуального хоста.   
    # Эта директива должна быть расположена в контейнере <VirtualHost>.   
    # Поддерживаемые протоколы для виртуального хоста поддерживаются отдельно.   
    # Если все поддерживаемые протоколы выключены, клиенты не смогут выполнить согласование SSL.   
    # Для этой директивы можно указать следующие значения: SSLv2, SSLv3, TLS, TLSv1, TLSv1.1, TLSv1.2
    SSLProtocolDisable SSLv2  
    SSLProtocolDisable SSLv3   
    
    # Директива keyfile задает файл ключей.   
    KeyFile <путь к хранилищу ключей>/<имя файла хранилища ключей>.kdb      
    
    # Директива SSLStashfile указывает путь к файлу, имя которого
    # содержит зашифрованный пароль для открытия устройства PKCS11.   
    # Зависит от mod_ibm_ssl.so   
    SSLStashfile <путь-к-файлу-бумажника>/.<имя-файла-бумажника>.sth
    
    # Директива SSLServerCert задает сертификат сервера для виртуального хоста.   
    # Зависит от mod_ibm_ssl.so  
    SSLServerCert <метка сертификата ssl>
    
    # Эта директива позволяет удаленным серверам подключаться к области
    # локального сервера; локальный сервер не выполняет роль прокси-сервера,
    # а является зеркальной копией удаленного сервера.   
    # <Путь> - это имя локального виртуального пути.   
    # <url> - это частичный URL удаленного сервера.   
    # ProxyPass <путь> <url>
    # Примечание: сохраните косую черту в конце
    ProxyPass / https://<хост tomcat dwa>:<порт tomcat dwa>/     
    
    # Эта директива позволяет Apache настроить URL в заголовке Location в ответах перенаправления HTTP.    
    # Такая функция имеет важное значение, если Apache применяется в
    # качестве обратного прокси-сервера, чтобы избежать обхода обратного
    # прокси-сервера за счет перенаправления HTTP на базовые
    # серверы, расположенные за обратным прокси-сервером.   
    # <Путь> - это имя локального виртуального пути.   
    # <url> - это частичный URL удаленного сервера - аналогично директиве ProxyPass.   
    # ProxyPassReverse <путь> <url>
    # Примечание: сохраните косую черту в конце
    ProxyPassReverse / https://<хост tomcat dwa>:<порт tomcat dwa>/  
    
    # Эта опция передает целевому хосту строку Host: из входящего запроса
    # вместо частного имени хоста, указанного в строке proxypass.
    ProxyPreserveHost On
    
    </VirtualHost>
    
    # Выключение SSL для всех остальных виртуальных хостов
    SSLDisable
  3. Запустите IBM HTTP Server.
  4. Запустите компоненты Rational DOORS Web Access.
  5. Запустите сервер Rational DOORS Web Access.
  6. Укажите обратный прокси-сервер для общедоступного URL и номера порта Rational DOORS Web Access с помощью следующей команды dbadmin:
    dbadmin -dwaHost url-обратного-прокси-сервера -dwaPort порт-обратного-прокси-сервера
    Дополнительная информация о команде dbadmin приведена в разделе Настройка сервера базы данных Rational DOORS.

Комментарии