Компонент Indeed Log Server позволяет записывать события со всех серверов Рутокен KeyBox в единый журнал Windows Event Log, СУБД Microsoft SQL Server, PostgreSQL Server, SysLog Server.
Установка Indeed Log Server
- Выполните вход на рабочую станцию с правами локального администратора.
- Запустите Indeed.LogServer.msi из дистрибутива (каталог Indeed.Log.Server) и выполните его установку следуя указаниям Мастера.
- Из каталога Indeed.Log.Server cкопируйте файлы:
- В каталог C:\inetpub\wwwroot\ls cкопируйте cmSchema.config.
- В каталог C:\inetpub\wwwroot\ls\targetConfigs cкопируйте cmEventLogTarget.config, cmMsSqlTarget.config, cmPgSqlTarget.config и cmSysLogTarget.config.
Настройка чтения и записи событий в Windows Event Log
Перейдите в каталог C:\inetpub\wwwroot\ls и отредактируйте файл clientApps.config следующим образом:
В секции Applications добавьте:
<ApplicationId="cm"SchemaId="cmSchema"><ReadTargetId>cmEventLogTarget</ReadTargetId><WriteTargets><TargetId>cmEventLogTarget</TargetId></WriteTargets><AccessControl><!--<CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" />--></AccessControl></Application>В секции Targets добавьте новый элемент:
<Targets><TargetId="cmEventLogTarget"Type="eventlog"/></Targets>
- Сохраните изменения и закройте файл конфигурации.
Настройка чтения и записи событий в СУБД MS SQL
База для хранения данных Indeed Log Server создается вручную, а её наполнение происходит автоматически.
- Создайте базу данных в среде SQL Management Studio с произвольным именем:
- В окне Обозреватель объектов (Object Explorer) нажмите правой кнопкой мыши по вкладке Базы данных (Databases).
- Выберите Создать базу данных... (New Database...).
- Укажите Имя базы данных: (Database name:) например, LogServer.
В поле Владелец: (Owner:) определите владельца создаваемой базы.
Создайте (например, servicesql) или выберите любую внутреннюю учетную запись SQL, или учетную запись Active Directory (например, сервисную учетную запись для работы RutokenKeyBox: servicecm). Указанная учетная запись после создания базы будет обладать правами db_owner, public и будет использоваться системой для выполнения операций записи/чтения в базу данных.Сохраните созданную базу данных нажав ОК.
- Перейдите в каталог C:\inetpub\wwwroot\ls\targetConfigs и отредактируйте файл cmMsSqlTarget.config в соответствии с настройками ниже:
<Settings> … </Settings>:- Data Source - имя сервера Microsoft SQL Server или именованного экземпляра Microsoft SQL Server
- Database - имя базы данных (ILS)
- User Id - сервисная учётная запись для работы с базами данных Рутокен KeyBox
Password - пароль сервисной учётной записи
<Settings><ConnectionString>Data Source=MSSQL\SQLEXPRESS;Database=LogServer;User Id=servicesql;Password=P@ssw0rd</ConnectionString></Settings>В случае использования именованного экземпляра Microsoft SQL Server значение параметра Server необходимо задавать в формате <имя сервера>\<имя экземпляра>.
<Settings><ConnectionString>Server=sql\Named instance; ... </ConnectionString></Settings>
Отредактируйте C:\inetpub\wwwroot\ls\clientApps.config для работы с файлом cmMsSqlTarget.config:
В секции Application добавьте:
<ApplicationId="cm"SchemaId="cmSchema"><ReadTargetId>cmMsSqlTarget</ReadTargetId>
<WriteTargets><TargetId>cmMsSqlTarget</TargetId></WriteTargets>
<AccessControl><!--<CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" />--></AccessControl></Application>В секции Targets добавьте новый элемент:
<Targets><TargetId="cmMsSqlTarget"Type="mssql"/></Targets>
- Сохраните изменения и закройте файл конфигурации.
Настройка чтения и записи событий в СУБД PostgreSQL
База для хранения данных Indeed Log Server создается вручную, а её наполнение происходит автоматически.
- В СУБД PostgreSQL (например, в среде pgAdmin) создайте базу данных:
- В окне Обозреватель (Browser) нажмите правой кнопкой мыши по пункту Базы данных (Databases).
- Выберите Создать (Create) > База данных... (Database...).
- На вкладке Общие (General) укажите произвольное название базы данных в поле База данных (Database), например, LogServer, выберите из списка Владелец (Owner) сервисную учетную запись, которая будет использоваться для подключения к базе данных (например, servicepg), и нажмите Сохранить (Save).
- Предоставление привилегий сервисной учётной записи на таблицы базы данных:
- Выделите созданную базу данных в списке и перейдите в меню Запросника (Query Tool) (нажатием на кнопку
Введите текст запроса, указав в запросе имя учётной записи:
GRANTALLPRIVILEGESONALLTABLESINSCHEMApublicTO"имя сервисной учётной записи без кавычек";- В меню Запросник нажмите на кнопку Выполнить (Execute/Refresh) .
По умолчанию в PostgreSQL разрешены только локальные подключения к базам данных, поэтому для работы между различными серверами требуется настройка удалённого подключения к БД:
В каталоге PostgreSQL откройте конфигурационный файл pg_hba.conf.
Расположение файла pg_hba.conf
Для Windows —
C:\Program Files\PostgreSQL\<номер версии>\dataДля *nix —
/etc/postgresql/<номер версии>/mainВ конце файла добавьте строку следующего типа:
CONNECTIONTYPE DATABASE USER ADDRESS METHODГде:
- CONNECTIONTYPE - Тип подключения. Указывается "host" - будет использоваться подключение по TCP/IP.
- DATABASE - Имя базы данных, для которой предоставляется доступ (ALL для доступа ко всем базам данных).
- USER - Имя пользователя, для которого будет доступно подключение (ALL для доступа всех пользователей).
- ADDRESS - IP-адрес удалённого сервера RutokenKeyBox (0.0.0.0/0 для доступа с любых адресов).
METHOD - Метод аутентификации пользователя (например, md5, scram-sha-256).
Примеры:host LogServer servicepg192.200.1.0/24md5host ALL servicepg10.0.0.0/8md5host ALL ALL0.0.0.0/0scram-sha-256
- В каталоге C:\inetpub\wwwroot\ls\targetConfigs отредактируйте файл cmPgSqlTarget.config в соответствии с настройками ниже:
<ConnectionString> … </ConnectionString>:- Host - имя сервера PostgreSQL Server
- Port - порт для подключения к СУБД PostgreSQL (5432 — значение по умолчанию)
- Database - имя созданной в п.1 базы данных
- Username - сервисная учётная запись для подключения к указанной базе данных
Password - пароль сервисной учётной записи
<Settings><ConnectionString>Host=SRV-POSTGRESQL;Port=5432;Database=LogServer;Username=servicepg;Password=P@ssw0rd</ConnectionString></Settings>
В файле C:\inetpub\wwwroot\ls\clientApps.config отредактируйте секцию <Application> для работы с файлом cmPgSqlTarget.config – добавьте новый TargetId для ReadTarget, WriteTarget:
<ApplicationId="cm"SchemaId="cmSchema"><ReadTargetId>cmPgSqlTarget</ReadTargetId><WriteTargets><TargetId>cmPgSqlTarget</TargetId></WriteTargets><AccessControl><!-- <CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" /> --></AccessControl></Application>В том же файле отредактируйте секцию <Target> для работы с файлом cmPgSqlTarget.config
<Targets><TargetId="cmPgSqlTarget"Type="pgsql"/></Targets>
Настройка записи событий в Syslog
- В каталоге C:\inetpub\wwwroot\ls\targetConfigs отредактируйте файл cmSysLogTarget.config в соответствии с настройками ниже:
<ConnectionString> … </ConnectionString>:- HostName - имя или IP-адрес Syslog сервера.
- Port - порт Syslog сервера (514 — порт по умолчанию).
Protocol - тип подключения к Syslog серверу: UDP, TCP, TCPoverTLS.
- Format - опциональный параметр, определяет формат логов: Plain, CEF, LEEF.
SyslogVersion - опциональный параметр, спецификация протокола: RFC3164, RFC5424.
<SettingsHostName="SRV-SYSLOG"Port="514"Protocol="UDP"/>
В файле C:\inetpub\wwwroot\ls\clientApps.config отредактируйте секцию <Application> для работы с файлом cmSysLogTarget.config – добавьте новый TargetId для WriteTarget:
<Applications><ApplicationId="cm"SchemaId="cmSchema"><ReadTargetId>cmPgSqlTarget</ReadTargetId><WriteTargets><TargetId>cmPgSqlTarget</TargetId><TargetId>cmSysLogTarget</TargetId></WriteTargets>
<AccessControl><!-- <CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" /> --></AccessControl></Application></Applications>В том же файле отредактируйте секцию <Target> для работы с файлом cmSysLogTarget.config
<Targets><TargetId="cmPgSqlTarget"Type="pgsql"/><TargetId="cmSysLogTarget"Type="syslog"/></Targets>Файлы
cmEventLogTarget.config
cmMsSqlTarget.config
cmPgSqlTarget.config
cmSchema.config
cmSysLogTarget.config


