====== Архитектура ПО ПАК АСТРА ====== ===== d-sh ===== Драйверы протоколов объектовых устройств обеспечивают интерфейс между сервером и объектовыми устройствами. Функционал драйвера состоит в корректной обработке информации в рамках конкретной системы объектовых устройств (например, «Security Hub»), ее преобразовании из внутреннего формата СПИ в стандартизированный формат JSON для последующей передачи демону обработки сообщений e3srv. Для примера ниже приведен файл конфигурации демона d-sh СПИ «SecurityHub» d -sh.cfg: //[server] port=2222 connections=1000000 [client] host=127.0.0.1 port=1110 [update] folder=updates [log] level=10// Где в секции «server»: **port** – номер порта сервиса; **connections** – максимальное число одновременных соединений, в секции «client»: **host** – ip-адрес сервиса обработки сообщений e3srv; **port** – порт сервиса обработки сообщений e3srv. ===== d3srv ===== Сервис приложений включает в себя программный сервис (демон) для ОС Unix под названием **d3srv**. Сервис приложений и клиент (АРМ) осуществляют свою работу в соответствии с архитектурой клиент-сервер. При этом АРМ – это тонкий клиент, который перекладывает большую часть задач по обработке информации на сервер. Сервис приложений выполняет функцию интерфейса между сервером и клиентом. Взаимодействие между клиентом и сервером происходит по специализированному протоколу посредством TCP/IP соединения. При этом соединение всегда инициируется клиентом. Сервис приложений непосредственно взаимодействует с сервисом СУБД посредством соединения через Unix sockets или TCP. Конфигурирование сервиса приложений d3srv осуществляется с помощью файла конфигурации d3srv.cfg. Содержимое файла по умолчанию: //d3srv.cfg: [server] port=1122 connections=2048 [database] socket=/var/run/mysqld/mysqld.sock ;host=localhost ;port=3306 database=dozor user=dozor password=******** [key] serial=00000000000000000000000000000000@127.0.0.1:37300 [log] level=8// Где в секции «server»: **port** – номер порта сервиса; **connections** –максимальное число одновременных соединений, в секции «database»: **socket** – unix socket для взаимодействия с БД; **database** – имя БД; **user** – имя пользователя для доступа к БД; **password** – пароль пользователя для доступа к БД, в секции «key»: **serial** – серийный номер ключа. При наличии нескольких ключей, указывается номер ключа в котором прописано число рабочих мест. Ключ задается как последовательность userID@ip:port, гдe userID - идентификатор пользователя, ip:port – ip-адрес и порт удаленного компьютера на котором расположен ключ. Пример: //serial=00000000000000000000000000000000@127.0.0.1:37300// ===== e3srv ===== Сервис обработки событий включает в себя программный сервис (демон) для ОС Unix под названием **e3srv**. Cервис обработки событий необходим для реализации интерфейса приема информации (событий) от драйверов СПИ и передачи им команд телеуправления. Сервис обработки событий позволяет осуществлять интеграцию с разными типами СПИ путем описания всех передаваемых данных в стандартизованном виде с использованием формата передачи данных «JSON». Конфигурирование сервиса обработки событий e3srv осуществляется с помощью файла конфигурации e3srv.cfg. Пример e3srv.cfg по умолчанию: //[server] port=1110 connections=256 [database] socket=/var/run/mysqld/mysqld.sock ;host=localhost ;port=3306 database=dozor user=dozor password=******** [log] level=8// Где секции «server»: **port** – номер порта сервиса; **connections** – максимальное число одновременных соединений, в секции «database»: **socket** – unix socket для взаимодействия с БД; **database** – имя БД; **user** – имя пользователя для доступа к БД; **password** – пароль пользователя для доступа к БД.