"ДБО BS-Client. Частный Клиент" v.2.5
Инструкция по настройке web-сервера Apache и сервера приложений Tomcat
Версия 2.5.0.0
СОДЕРЖАНИЕ:
Введение_ 3
Общее описание процесса настройки_ 4
Начальные условия, системные требования_ 4
Схема взаимодействия компонентов_ 5
Входные и выходные данные процесса настройки_ 6
Соглашения по заданию путей и по содержимому конфигурационных файлов_ 6
Последовательность настройки_ 8
Настройка модулей RTS и BSI 8
Конфигурирование Tomcat 8
Установка сервлета bsi. jar 8
Конфигурирование файла server. xml 9
Конфигурирование файла web. xml 9
Конфигурирование стартового скрипта Tomcat 10
Конфигурирование Apache_ 10
Установка статической части сайта 10
Установка сертификата SSL 10
Конфигурирование файла httpd. conf 10
Конфигурирование файла workers. properties 13
Настройка BS-Defender 13
Запуск серверов_ 13
Введение
Настоящий документ содержит информацию, актуальную на момент его составления. не гарантирует отсутствия ошибок в данном документе. оставляет за собой право вносить изменения в документ без предварительного уведомления.
Данный документ описывает этап процесса установки и настройки сервиса “Интернет-клиент” системы BS-Client, а именно последовательность настройки web-сервера, в случае, когда в качестве web-сервера выступает связка: web-сервер Apache и сервер приложений Tomcat.
Полный процесс установки системы ДБО BS-Client. «Частный Клиент» описан в документе «Руководство по установки системы. doc).
Общее описание процесса настройки
В данной главе приведено общее описание процесса настройки web-сервера Apache и сервера приложений Tomcat:
· Начальные условия, системные требования.
· Схема взаимодействия компонентов.
· Входные и выходные данные процесса настройки.
· Соглашения по заданию путей и по содержимому конфигурационных файлов.
Начальные условия, системные требования
Начальными условиями для описываемого процесса настройки является наличие установленных web-сервера Apache и сервера приложений Tomcat вместе с дополнительными компонентами, обеспечивающими взаимодействие серверов и защиту канала данных. Список приложений, которые должны быть установлены, вместе с номерами рекомендуемых версий представлен в следующей таблице:
Применяемое ПО | ||
Назначение | Приложение | Версия |
Web-сервер | Apache | 1.3 и выше |
Сервер приложений | Tomcat 3 или 4 | 3.3.1a или 4.1.29 |
SSL-библиотека* | OpenSSL | 0.9.8 |
SSL-модуль для web-сервера* | mod_ssl | штатный, из состава Apache |
Модуль связи Apache-Tomcat | mod_jk | 1.2.14.1 |
Виртуальная машина java | J2sdk | 1.4.2_08 |
Примечание: В таблице приведены версии приложений, для которых производилось тестирование описываемой конфигурации. Возможно использование более поздних версий продуктов, для получения подробной информации обратитесь в службу поддержки компании BSS.
При использовании связки Apache-Tomcat возможно использование средств защиты канала SSL. Компоненты, отмеченные в таблице звездочками, необходимо устанавливать только в том случае, если планируется использовать SSL.
Каждое приложение должно быть установлено в соответствии с поставляемой с приложением документацией. Web-сервер должен быть «собран» с DSO-режимом подключения внешних модулей. Это необходимо для того, чтобы можно было организовать взаимодействие Apache и Tomcat с помощью модуля mod_jk.
В качестве операционной системы могут использоваться как ОС из семейства Unix, так и ОС из семейства Windows. Если сервер использует платформу FreeBSD, то в ядро должна быть включена поддержка Linux_base для обеспечения работоспособности Java.
Данный документ описывает процесс настройки независимо от операционной системы. Отличия касаются только написания путей в конфигурационных файлах (см. ниже).
Для настройки Apache и Tomcat необходимы следующие компоненты системы BS-Client, отвечающие за динамическое и статическое содержание пользовательского сайта сервиса “Интернет-клиент”:
Компоненты BS-Client | |
Компонент | Назначение |
bsi. jar | Сервлет, осуществляющий связь с модулем RTS (при использовании web-сервера IIS данную функцию выполняет библиотека bsi. dll) |
www. zip | Архив со статическим файловым содержимым пользовательского сайта |
Данные компоненты входят в состав установочного диска.
Если для защиты канала планируется использовать SSL, то перед настройкой необходимо получить SSL-сертификат.
Описываемая конфигурация предъявляет минимальные требования к аппаратной части, однако необходимо наличие достаточного объема оперативной памяти (от 512 Мб) на машине, где установлена среда выполнения Java, и производительной дисковой подсистемы, если требуется активно использовать журнализацию работы компонентов.
Схема взаимодействия компонентов
В описываемой конфигурации основными узлами системы BS-Client, обеспечивающими функционирование сервиса “Интернет-клиент”, являются web-сервер Apache, сервер приложений Tomcat, модуль RTS и СУБД. Указанные узлы могут быть размещены на различных физических серверах, однако для обеспечения высокого быстродействия канал связи между Apache и Tomcat должен быть свободен. Остальные компоненты обеспечивают взаимодействие указанных узлов между собой в процессе обработки запросов пользователей. Параметры работы компонентов задаются конфигурационными файлами. Схема взаимодействия компонентов с указанием соответствующих конфигурационных файлов, приведена ниже:

Запрос от браузера пользователя поступает на web-сервер Apache по протоколу https (при использовании SSL). Запросы, обращающиеся к виртуальным каталогам s, sc, sd и sx, направляются на стандартный коннектор ajp13 модуля mod_jk. Остальные запросы обрабатываются непосредственно внутри сервера Apache (обращение к статическому файловому массиву сайта).
Запросы, направленные на коннектор ajp13, поступают на сервер приложений Tomcat и обрабатываются сервлетом bsi. jar. Сервлет осуществляет взаимодействие с модулем RTS, который, в свою очередь обращается к СУБД. Полученный от модуля RTS ответ обратно по той же цепочке поставляется браузеру пользователя.
Каждый компонент этот цепи, а также связи между компонентами, настраиваются с помощью соответствующих конфигурационных файлов:
Конфигурационные файлы | |
Файл | Назначение |
httpd. conf | Конфигурационный файл Apache, в числе прочих параметров работы web-сервера содержит параметры пользовательского сайта и параметры соединения с модулем mod_jk |
workers.properties | Конфигурационный файл коннектора ajp13, содержит параметры соединения коннектора с сервером приложений Tomcat |
server. xml | Конфигурационный файл Tomcat, в числе прочих параметров содержит параметры сокета ожидания запросов |
web. xml | Конфигурационный файл Tomcat, содержит параметры отображения (mapping) запросов на сервлет bsi. jar |
bsi. xml | Конфигурационный файл сервлета bsi. jar, содержит параметры соединения сервлета с модулем RTS |
rts. cfg | Конфигурационный файл модуля RTS |
Настройка файлов bsi. xml и rts. cfg в данной инструкции не рассматривается.
Входные и выходные данные процесса настройки
Основными входными данными для настройки конфигурационных файлов являются:
· DNS-имя или IP-адрес и номер порта web-сервера Apache;
· DNS-имя или IP-адрес и номер порта сервера приложений Tomcat;
· имена и расположение файлов сертификата SSL (если используется способ защиты канала SSL);
· каталог, куда установлен web-сервер Apache ($APACHE_HOME);
· каталог, куда установлен сервер приложений Tomcat ($CATALINA_HOME);
· каталог, куда установлена среда выполнения Java ($JAVA_HOME);
· имя и расположение конфигурационного файла workers.properties коннектора ajp13 (по умолчанию $APACHE_HOME/conf/workers. properties);
· имя и расположение стартового скрипта Tomcat (для ОС семейства Unix $CATALINA_HOME/BIN/catalina.sh).
Значения этих параметров необходимо представлять перед осуществлением процесса настройки.
Промежуточными результатами настройки являются:
· расположение файла сервлета bsi. jar;
· расположение конфигурационного файла bsi. xml;
· имя и расположение каталога со статическим файловым содержимым пользовательского сайта.
Конечным результатом настройки являются настроенные и готовые к обработке запросов пользователей web-сервер Apache и сервер приложений Tomcat.
Соглашения по заданию путей и по содержимому конфигурационных файлов
Описываемые ниже действия по настройке в целом справедливы для ОС семейств Unix и Windows. Однако фрагменты конфигурационных файлов в документе приводятся для ОС семейства Unix. Различия в конфигурационных файлах при использовании различных ОС касаются правил написания каталогов:
· для ОС семейства Unix при указании путей используются прямые слэши (“/”), а для ОС семейства Windows – обратные (“\”).
· для обращения к переменным окружения в ОС семейства Unix используется символ “$” (например, $APACHE_HOME), в ОС семейства Windows – символы “%” (например, %APACHE_HOME%).
Поэтому для настройки конфигурационных файлов под Windows необходимо в путях заменить символы “/” на “\” и синтаксически корректно оформить обращение к переменным окружения.
С целью абстрагирования от конкретной ОС все имена каталогов задаются с помощью переменных окружения:
Переменные окружения | ||
Переменная | Назначение | Обычно используемые значения для ОС семейства Unix |
$APACHE_HOME | Каталог, куда установлен web-сервер Apache | /usr/local/apache2/ |
$CATALINA_HOME | Каталог, куда установлен сервер приложений Tomcat | /usr/local/tomcat/ |
$JAVA_HOME | Каталог, куда установлена среда выполнения Java | /usr/local/java/ |
Необходимо либо задать значения этих переменных окружения (если они не заданы при установке соответствующих приложений), либо подставлять конкретные значения в конфигурационные файлы вместо обращений к переменным.
В приводимых фрагментах конфигурационных файлов жирным начертанием выделены параметры, значения которых необходимо задавать администратору. Остальное содержимое конфигурационных файлов для осуществления настройки изменять не требуется.
Последовательность настройки
В отличие от процесса настройки сервиса “Интернет-клиент” при использовании web-сервера IIS, в котором сначала идет настройка web-сервера, а затем настройка модулей RTS и BSI, при использовании связки Apache-Tomcat необходимо придерживаться другой последовательности действий. Настройка модуля BSI должна производиться перед настройкой сервера приложений Tomcat, так как получаемый в процессе настройки файл bsi. xml в дальнейшем упоминается в конфигурационных файлах Tomcat.
Примечание: В случае если сначала была произведена настройка сервера приложений Tomcat, а затем настройка модуля BSI, для того, чтобы изменения вступили в силу, необходимо перезапустить Tomcat (см. параграф Запуск серверов на стр. 13).
Вся последовательность настройки сервиса “Интернет-клиент” в описываемой конфигурации происходит в соответствии с приведенной выше схемой взаимодействия компонентов (в направлении, обратном направлению стрелок) и выглядит следующим образом:
· Настройка модулей RTS и BSI.
· Конфигурирование Tomcat.
· Конфигурирование Apache.
· Запуск серверов.
Этапы последовательности детально рассмотрены ниже.
Настройка модулей RTS и BSI
Установка и настройка RTS, BSI производится на одном или нескольких серверах под управлением ОС Windows.
Для настройки данных модулей:
F Настройте RTS. В настройке RTS пропишите Host=[адрес Linux-машины]
F Настройте bsi. xml. В процессе настройки необходимо запустить bsiset. exe выбрать библиотеку bsi. bll и настроить профиль с именем Default.

F Нажать Edit:

F Выбрать Default-конфигурацию и нажать Configuration
F Выставить на закладке Autentification= SID(SSL), на закладке Added Params добавить(если нет) параметр ccAuthType=1

F Полученный после настройки файл bsi. xml поместите в каталог $CATALINA_HOME/conf. Расположение данного файла далее необходимо будет прописать в стартовом скрипте Tomcat (см. ниже).
Конфигурирование Tomcat
Конфигурирование сервера приложений Tomcat состоит из следующих этапов:
· Установка сервлета bsi. jar.
· Конфигурирование файла server. xml.
· Конфигурирование файла web. xml.
· Конфигурирование стартового скрипта Tomcat.
Установка сервлета bsi. jar
Для установки сервлета bsi. jar:
F Распакуйте архив bsi. jar. zip с инсталляционного диска системы.
F Файл bsi.jar из распакованного архива поместите в каталог $CATALINA_HOME/webapps/ROOT/WEB-INF/lib. Это гарантирует автоматический запуск сервлета при старте Tomcat.
F Назначьте файлу bsi. jar права на чтение, соответствующие тому пользователю, под которым запущен или будет запущен сервер приложений Tomcat.
Конфигурирование файла server. xml
Конфигурационный файл Tomcat server. xml в числе прочих параметров содержит параметры сокета ожидания запросов, а именно номер прослушиваемого порта (атрибут port тега Connector).
Внесите приведенные ниже изменения в файл с учетом номера порта:
<!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" debug="0"
protocol="AJP/1.3" />
Объявления остальных сервисов, кроме сервиса на порту 8005, при желании можно закомментировать.
Конфигурирование файла web. xml
Конфигурационный файл Tomcat web. xml содержит параметры отображения (mapping) запросов на сервлет bsi. jar. Файл располагается в каталоге $CATALINA_HOME/webapps/ROOT/WEB-INF.
Внесите следующие изменения в текст файла:
<web-app>
<servlet>
<servlet-name>bsi. dll</servlet-name>
<servlet-class>com. bss. internet. bsi. BSIServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>bsi. dll</servlet-name>
<url-pattern>/v1/cgi/bsi. dll</url-pattern>
</servlet-mapping>
</web-app>
Конфигурирование стартового скрипта Tomcat
Конфигурационный файл bsi. xml должен быть сообщен сервлету bsi. jar через параметр окружения Tomcat. Допустимо выполнить объявление данного параметра непосредственно в стартовом скрипте Tomcat (для ОС семейства Unix $CATALINA_HOME/BIN/catalina.sh):
CATALINA_OPTS="-Dbscript. confFile=$CATALINA_HOME/conf/bsi. xml"
Конфигурирование Apache
Конфигурирование web-сервера Apache состоит из следующих этапов:
· Установка статической части сайта.
· Установка сертификата SSL.
· Конфигурирование файла httpd. conf.
· Конфигурирование файла workers. properties.
Установка статической части сайта
Для установки статической файловой части пользовательского сайта:
F Создайте произвольный каталог для статической части, например, $APACHE_HOME/htdocs/.
F Распакуйте архив www. zip с инсталляционного диска системы[1].
F Скопируйте содержимое каталога bsi_sites/ из распакованного архива в каталог для статической части.
Расположение каталога статической части сайта далее необходимо будет прописать в конфигурационном файле httpd. conf.
Установка сертификата SSL
Если требуется использовать тип защиты канала SSL, разместите файлы сертификата SSL на жестком диске сервера, на котором установлен web-сервер Apache. Расположение файлов сертификата далее необходимо будет прописать в стартовом скрипте Apache (см. ниже).
Конфигурирование файла httpd. conf
Конфигурационный файл Apache httpd. conf в числе прочих параметров работы web-сервера содержит параметры пользовательского сайта и параметры соединения с модулем mod_jk.
Ниже приводятся фрагменты, которые необходимо включить в конфигурационный файл httpd. conf. Инструкции по заданию параметров конфигурационного файла приведены в соответствующих комментариях:
#Задание общих параметров web-сервера
#В директиве Listen необходимо указать порт, прослушиваемый Apache
#При использовании протокола https (SSL) по умолчанию 443
#При использовании протокола http (BS-Defender) по умолчанию 80
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
Listen 443
AddType application/x-x509-ca-cert. crt
AddType application/x-pkcs7-crl. crl
SSLPassPhraseDialog builtin
SSLSessionCache dbm:$APACHE_HOME/logs/ssl_scache
SSLSessionCacheTimeout 300
SSLMutex file:$APACHE_HOME/logs/ssl_mutex
#Глобальное определение mod_jk и инструкции подключения
#и перехвата запросов
#В директиве JkWorkersFile необходимо указать имя и расположение
#конфигурационного файла workers. properties коннектора ajp13
LoadModule jk_module modules/mod_jk. so
JkWorkersFile $APACHE_HOME/conf/workers. properties
JkLogFile $APACHE_HOME/logs/mod_jk. log
JkLogLevel info
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
JkOptions +ForwardKeySize +ForwardURICompat - ForwardDirectories
JkRequestLogFormat "%w %V %T"
#Задание параметров пользовательского сайта
#сервиса “Интернет-клиент”
#В качестве значения атрибута _default_ необходимо указать номер
#прослушиваемого порта
#В директиве DocumentRoot необходимо указать каталог статической
#части сайта
<VirtualHost _default_:443>
AddDefaultCharset windows-1251
Alias /cab/ $APACHE_HOME/htdocs/cab/
DocumentRoot "$APACHE_HOME/htdocs/"
DirectoryIndex index. htm
ErrorLog $APACHE_HOME/logs/error_log_rt_ic
TransferLog $APACHE_HOME/logs/access_rt_ic_log
SetEnvIf User-Agent ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog $APACHE_HOME/logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
#Данный фрагмент необходимо включать только при использовании SSL
#В директивах SSLCertificateFile и SSLCertificateKeyFile
#необходимо указать расположение файлов сертификата SSL
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile $APACHE_HOME/conf/ssl. crt/server. crt
SSLCertificateKeyFile $APACHE_HOME/conf/ssl. key/server. key
#Настройка виртуальных директорий сайта
#Соответствует настройке директорий в IIS
<Location /v1>
ForceType None
ExpiresActive On
ExpiresDefault "access plus 60 days"
</Location>
<Files index. htm>
ExpiresActive Off
Header set Expires -1
Header set Cache-control no-store, proxy-revalidate, max-age=1
</Files>
<Location /v1/cgi>
ExpiresActive Off
Header set Expires -1
Header set Cache-control no-store, proxy-revalidate, max-age=1
</Location>
#Непосредственная привязка коннектора ajp13 к фрагментам URL
JkMount /v1/cgi/* ajp13
#Завершения блока <VirtualHost> с параметрами сайта
</VirtualHost>
Конфигурирование файла workers. properties
Конфигурационный файл коннектора ajp13 workers.properties содержит параметры соединения коннектора с сервером приложений Tomcat.
В файле необходимо задать значения следующих параметров:
· каталог, куда установлен сервер приложений Tomcat (параметр workers.tomcat_home);
· каталог, куда установлена среда выполнения Java (параметр workers. java_home);
· DNS-имя или IP-адрес (параметр worker. ajp13.host) и номер порта (параметр worker. ajp13.port) сервера приложений Tomcat.
Примечание: Использование IP-адреса предпочтительнее, так как в этом случае работоспособность описываемой конфигурации не зависит от работоспособности DNS-сервера.
Внесите приведенные ниже изменения в файл с учетом значений перечисленных параметров:
workers. tomcat_home=$CATALINA_HOME
workers. java_home=$JAVA_HOME
ps=/
worker. list=ajp13
worker. ajp13.port=8009
worker. ajp13.host=localhost
worker. ajp13.type=ajp13
worker. ajp13.lbfactor=1
Запуск серверов
После того, как конфигурирование Apache и Tomcat выполнено, необходимо запустить сервера или перезапустить их, если они уже запущены.
При использовании ОС семейства Unix перезапуск Tomcat осуществляется с помощью стартового скрипта catalina. sh:
root# cd $CATALINA_HOME/bin
root# sh./catalina. sh stop
root# killall -9 java
root# sh./catalina. sh start
Примечание: Команда killall -9 java гарантирует уничтожение процесса java, что необходимо при перезапуске Tomcat.
После выполнения всех указанных действий web-сервер Apache и сервер приложений Tomcat будут настроены и готовы к обработке запросов пользователей сервиса “Интернет-клиент”.
[1] Необходимо использовать архиватор, поддерживающий длинные имена файлов.


