Компонент RutokenKeyBox Log Server позволяет Компонент Indeed Log Server позволяет записывать события со всех серверов Рутокен KeyBox в единый журнал Windows Event Log или СУБД , СУБД Microsoft SQL Server, PostgreSQL Server, SysLog Server.
Info |
---|
Компонент устанавливается на одном из серверов |
...
Рутокен KeyBox или на отдельной рабочей станции (в домене или вне его). Системные требования для установки компонента совпадают с требованиями к серверу |
...
Рутокен KeyBox. |
Установка
...
Indeed Log Server
- Выполните вход на рабочую станцию с правами локального администратора.
- Запустите RutokenKeyBoxIndeed.LogServer.msi из дистрибутива (каталог RutokenKeyBox из каталога Indeed.Log.Server ) и дистрибутива системы и выполните его установку следуя указаниям Мастера.
- Из каталога RutokenKeyBoxIndeed.Log.Server cкопируйте файлы:
- В каталог файл cmSchema.config в каталог C:\inetpub\wwwroot\ls.Из каталога RutokenKeyBox.Server\targetConfigs файлы cmEventLogTarget.config и cmSqlTarget.config в cкопируйте cmSchema.config.
- В каталог C:\inetpub\wwwroot\ls\targetConfigs cкопируйте cmEventLogTarget.config, cmMsSqlTarget.config, cmPgSqlTarget.config и cmSysLogTarget.config.
Note |
---|
Indeed Log Server поддерживает чтение событий только из одного хранилища (<ReadTargetId>), запись событий возможна одновременно в несколько хранилищ (<WriteTargets>). |
Warning |
---|
Для применения настроек после сохранения изменений в файлах необходимо перезапустить IIS. |
Настройка чтения и записи событий в Windows Event Log
Перейдите в каталог C:\inetpub\wwwroot\ls и отредактируйте файл clientApps.config следующим образом:
В секции Applications добавьте:
<
Application
Id
=
"cm"
SchemaId
=
"cmSchema"
>
<
ReadTargetId
>cmEventLogTarget</
ReadTargetId
>
<
WriteTargets
>
<
TargetId
>cmEventLogTarget</
TargetId
>
</
WriteTargets
>
<
AccessControl
>
<!--<CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" />-->
</
AccessControl
>
</
Application
>
В секции Targets добавьте новый элемент:
<
Targets
>
...
<
Target
Id
=
"cmEventLogTarget"
Type
=
"eventlog"
/>
</
Targets
>
- Сохраните изменения и закройте файл конфигурации.
Настройка чтения и записи событий
...
в MS SQL
База для хранения данных RutokenKeyBox Indeed Log Server создается вручную, а её наполнение происходит автоматически.
- Создайте базу данных в среде SQL среде SQL Management Studio с Studio с произвольным именем:
- В окне Обозреватель объектов (Object Explorer) нажмите правой кнопкой мыши по вкладке Базы данных (Databases).
- Выберите Создать базу данных... (New Database...).
- Укажите Имя базы данных: (Database name:) например, LogServer.
В поле Владелец: (Owner:) определите владельца создаваемой базы.
Info Создайте (например, servicesql) или выберите любую внутреннюю учетную запись SQL, или учетную запись Active Directory (например, сервисную учетную запись для работы Рутокен KeyBoxRutokenKeyBox: servicecm). Указанная учетная запись после создания базы будет обладать правами db_owner, public и будет использоваться системой для выполнения операций записи/чтения в базу данных. Сохраните созданную базу данных нажав ОК.
- Перейдите в каталог C:\inetpub\wwwroot\ls\targetConfigs и отредактируйте файл cmSqlTargetcmMsSqlTarget.config в соответствии с настройками ниже:
<Settings> … </Settings>:- Data Source — имя - имя сервера Microsoft SQL Server или именованного экземпляра Microsoft SQL Server.
- Database —- имя базы данных (ILS).
- User Id — сервисная - сервисная учётная запись для работы с базами данных Рутокен KeyBox.
Password — - пароль сервисной учётной записи.
<
Settings
>
<
ConnectionString
>Data Source=DCMSSQL\SQLEXPRESS;Database=LogServer;User Id=servicesql;Password=P@ssw0rd</
ConnectionString
>
</
Settings
>
Warninginfo В случае использования именованного экземпляра Microsoft SQL Server значение параметра Server необходимо задавать в формате <имя сервера>\<имя экземпляра>.
<
Settings
>
<
ConnectionString
>Server=sql\Named instance; ... </
ConnectionString
>
</
Settings
>
Отредактируйте C:\inetpub\wwwroot\ls\clientApps.config для работы с файлом cmSqlTargetcmMsSqlTarget.config:
В секции Application добавьте добавьте:
<
Application
Id
=
"cm"
SchemaId
=
"cmSchema"
>
<
ReadTargetId
>cmSqlTarget<>cmMsSqlTarget</
ReadTargetId
>
<
WriteTargets
>
<
TargetId
>cmSqlTarget<>cmMsSqlTarget</
TargetId
>
</
WriteTargets
>
<
AccessControl
>
<!--<CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" />-->
</
AccessControl
>
</
Application
>
В секции Targets добавьте новый элемент:
<
Targets
>
...
<
Target
Id
=
"cmSqlTargetcmMsSqlTarget"
Type
=
"mssql"
/>
</
Targets
>
- Сохраните изменения и закройте файл конфигурации.
Настройка чтения и записи событий в PostgreSQL
База для хранения данных Indeed Log Server создается вручную, а её наполнение происходит автоматически.
- В СУБД PostgreSQL (например, в среде pgAdmin) создайте базу данных:
- В окне Обозреватель (Browser) нажмите правой кнопкой мыши по пункту Базы данных (Databases).
- Выберите Создать (Create) > База данных... (Database...).
- На вкладке Общие (General) укажите произвольное название базы данных в поле База данных (Database), например, LogServer, выберите из списка Владелец (Owner) сервисную учетную запись, которая будет использоваться для подключения к базе данных (например, servicepg), и нажмите Сохранить (Save).
- Предоставление привилегий сервисной учётной записи на таблицы базы данных:
- Выделите созданную базу данных в списке и перейдите в меню Запросник (Query Tool) нажатием на кнопку
Введите текст запроса, указав в запросе имя учётной записи:
GRANT
ALL
PRIVILEGES
ON
ALL
TABLES
IN
SCHEMA
public
TO
"имя сервисной учётной записи без кавычек"
;
- В меню Запросник нажмите на кнопку Выполнить (Execute/Refresh) .
По умолчанию в PostgreSQL разрешены только локальные подключения к базам данных, поэтому для работы между различными серверами требуется настройка удалённого подключения к БД:
В каталоге PostgreSQL откройте конфигурационный файл pg_hba.conf.
Info Расположение файла 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 servicepg
192.200
.
1.0
/
24
md5
host ALL servicepg
10.0
.
0.0
/
8
md5
host ALL ALL
0.0
.
0.0
/
0
scram-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:
<
Application
Id
=
"cm"
SchemaId
=
"cmSchema"
>
<
ReadTargetId
>cmPgSqlTarget</
ReadTargetId
>
<
WriteTargets
>
<
TargetId
>cmPgSqlTarget</
TargetId
>
</
WriteTargets
>
<
AccessControl
>
<!-- <CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" /> -->
</
AccessControl
>
</
Application
>
В том же файле отредактируйте секцию <Target> для работы с файлом cmPgSqlTarget.config
<
Targets
>
<
Target
Id
=
"cmPgSqlTarget"
Type
=
"pgsql"
/>
</
Targets
>
Настройка записи событий в Syslog
Info |
---|
Возможности Syslog ограничены только записью событий (<WriteTargets>). В данном примере дополняется конфигурация из предыдущего примера с PostgreSQL. |
- В каталоге 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.
<
Settings
HostName
=
"SRV-SYSLOG"
Port
=
"514"
Protocol
=
"UDP"
/>
В файле C:\inetpub\wwwroot\ls\clientApps.config отредактируйте секцию <Application> для работы с файлом cmSysLogTarget.config – добавьте новый TargetId для WriteTarget:
<
Applications
>
<
Application
Id
=
"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
>
<
Target
Id
=
"cmPgSqlTarget"
Type
=
"pgsql"
/>
<
Target
Id
=
"cmSysLogTarget"
Type
=
"syslog"
/>
</
Targets
>
Файлы
cmEventLogTarget.config
cmMsSqlTarget.config
cmPgSqlTarget.config
cmSysLogTarget.config