Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Компонент Indeed Log Server позволяет записывать события с одного или нескольких серверов Indeed Certificate Manager в единый журнал Windows Event Log, СУБД Microsoft SQL Server, PostgreSQL Server, SysLog Server.

Info

Компонент устанавливается на одном из серверов Indeed CM или на отдельной рабочей станции (в домене или вне его). Системные требования для установки компонента совпадают с требованиями к серверу Indeed CM.

Установка Indeed Log Server

  1. Выполните вход на рабочую станцию с правами локального администратора.
  2. Запустите Indeed.LogServer-<номер версии>.x64.ru-ru.msi из каталога Indeed.Log.Server дистрибутива системы и выполните его установку следуя указаниям Мастера.
  3. Из каталога Indeed.Log.Server cкопируйте файлы: 
    • В каталог C:\inetpub\wwwroot\lscкопируйте cmSchema.config.
    • В каталог C:\inetpub\wwwroot\ls\targetConfigscкопируйте cmEventLogTarget.configcmMsSqlTarget.config, cmPgSqlTarget.config и cmSysLogTarget.config.
Note

Indeed Log Server поддерживает чтение событий только из одного хранилища (<ReadTargetId>), запись событий возможна одновременно в несколько хранилищ (<WriteTargets>).


Warning

Для применения настроек после сохранения изменений в файлах необходимо перезапустить IIS.

Настройка чтения и записи событий в Windows Event Log

  1. Перейдите в каталог C:\inetpub\wwwroot\ls и отредактируйте файл clientApps.config следующим образом:

    • В секции Applications добавьте:

      Code Block
      languagexml
      firstline35
      <Application Id="cm" SchemaId="cmSchema">
      	<ReadTargetId>cmEventLogTarget</ReadTargetId>
          <WriteTargets>
             	<TargetId>cmEventLogTarget</TargetId>
          </WriteTargets>
      	<AccessControl>
      		<!--<CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" />-->
      	</AccessControl>
      </Application>


    • В секции Targets добавьте новый элемент:

      Code Block
      languagexml
      <Targets>
          <Target Id="cmEventLogTarget" Type="eventlog"/>
      </Targets>


  2. Сохраните изменения и закройте файл конфигурации.

Настройка чтения и записи событий в MS SQL

База для хранения данных Indeed Log Server создается вручную, а её наполнение происходит автоматически.

  1. Создайте базу данных в среде SQL Management Studio с произвольным именем:
    • В окне Обозреватель объектов (Object Explorer) нажмите правой кнопкой мыши по вкладке Базы данных (Databases).
    • Выберите Создать базу данных... (New Database...).
    • Укажите Имя базы данных: (Database name:) например, LogServer.
    • В поле Владелец: (Owner:) определите владельца создаваемой базы.

      Info

      Создайте (например, servicesql) или выберите любую внутреннюю учетную запись SQL, или учетную запись Active Directory (например, сервисную учетную запись для работы Indeed CM: servicecm). Указанная учетная запись после создания базы будет обладать правами db_owner, public и будет использоваться системой для выполнения операций записи/чтения в базу данных.


    • Сохраните созданную базу данных нажав ОК.

  2. Перейдите в каталог C:\inetpub\wwwroot\ls\targetConfigs и отредактируйте файл cmMsSqlTarget.config в соответствии с настройками ниже:
    <Settings> … </Settings>:
    • Data Source - имя сервера Microsoft SQL Server или именованного экземпляра Microsoft SQL Server
    • Database - имя базы данных (ILS)
    • User Id - сервисная учётная запись для работы с базами данных Indeed CM
    • Password - пароль сервисной учётной записи

      Code Block
      languagexml
      <Settings>
      	<ConnectionString>Data Source=MSSQL\SQLEXPRESS;Database=LogServer;User Id=servicesql;Password=P@ssw0rd</ConnectionString>
      </Settings>


      Note

      В случае использования именованного экземпляра Microsoft SQL Server значение параметра Server необходимо задавать в формате <имя сервера>\<имя экземпляра>.

      Code Block
      languagexml
      <Settings>
          <ConnectionString>Server=sql\Named instance; ... </ConnectionString>
      </Settings>



  3. Отредактируйте C:\inetpub\wwwroot\ls\clientApps.config для работы с файлом cmMsSqlTarget.config:

    • В секции Application добавьте:

      Code Block
      languagexml
      <Application Id="cm" SchemaId="cmSchema">
      	<ReadTargetId>cmMsSqlTarget</ReadTargetId>
      
          <WriteTargets>
             	<TargetId>cmMsSqlTarget</TargetId>
          </WriteTargets>
      
      	<AccessControl>
      		<!--<CertificateAccessControl CertificateThumbprint="001122...AA11" Rights="Read" />-->
      	</AccessControl>
      </Application> 


    • В секции Targets добавьте новый элемент:

      Code Block
      languagexml
      <Targets>
          <Target Id="cmMsSqlTarget" Type="mssql"/>
      </Targets> 


  4. Сохраните изменения и закройте файл конфигурации.

Настройка чтения и записи событий в PostgreSQL

База для хранения данных Indeed Log Server создается вручную, а её наполнение происходит автоматически.

  1. В СУБД PostgreSQL (например, в среде pgAdmin) создайте базу данных:
    • В окне Обозреватель (Browser) нажмите правой кнопкой мыши по пункту Базы данных (Databases). 
    • Выберите Создать (Create) > База данных... (Database...).
    • На вкладке Общие (General) укажите произвольное название базы данных в поле База данных (Database), например, LogServer, выберите из списка Владелец (Owner) сервисную учетную запись, которая будет использоваться для подключения к базе данных (например, servicepg), и нажмите Сохранить (Save).
  2. Предоставление привилегий сервисной учётной записи на таблицы базы данных:
    • Выделите созданную базу данных в списке и перейдите в меню Запросника (Query Tool) (нажатием на кнопку или комбинацией клавиш ALT+SHIFT+Q)
    • Введите текст запроса, указав в запросе имя учётной записи:

      Code Block
      languagesql
      GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO "имя сервисной учётной записи без кавычек";


    • В меню Запросника нажмите на кнопку Выполнить (Execute/Refresh) .

  3. По умолчанию в PostgreSQL разрешены только локальные подключения к базам данных, поэтому для работы между различными серверами требуется настройка удалённого подключения к БД:

    • В каталоге PostgreSQL откройте конфигурационный файл pg_hba.conf.

      Info
      titleРасположение файла pg_hba.conf

      Для Windows — C:\Program Files\PostgreSQL\<номер версии>\data

      Для *nix — /etc/postgresql/<номер версии>/main


    • В конце файла добавьте строку следующего типа:

      Code Block
      CONNECTIONTYPE DATABASE USER ADDRESS METHOD

      Где:

      • CONNECTIONTYPE -  Тип подключения. Указывается "host" - будет использоваться подключение по TCP/IP.
      • DATABASE - Имя базы данных, для которой предоставляется доступ (ALL для доступа ко всем базам данных).
      • USER - Имя пользователя, для которого будет доступно подключение (ALL для доступа всех пользователей).
      • ADDRESS - IP-адрес удалённого сервера Indeed Certificate Manager (0.0.0.0/0 для доступа с любых адресов).
      • METHOD - Метод аутентификации пользователя (например, md5, scram-sha-256).

        Code Block
        titleПримеры:
        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


  4. В каталоге C:\inetpub\wwwroot\ls\targetConfigs отредактируйте файл cmPgSqlTarget.config в соответствии с настройками ниже:
    <ConnectionString> … </ConnectionString>:
    • Host - имя сервера PostgreSQL Server
    • Port - порт для подключения к СУБД PostgreSQL (5432 — значение по умолчанию)
    • Database - имя созданной в п.1 базы данных
    • Username - сервисная учётная запись для подключения к указанной базе данных
    • Password - пароль сервисной учётной записи

      Code Block
      languagexml
      <Settings>
        <ConnectionString>Host=SRV-POSTGRESQL;Port=5432;Database=LogServer;Username=servicepg;Password=P@ssw0rd</ConnectionString>
      </Settings>


  5. В файле C:\inetpub\wwwroot\ls\clientApps.config отредактируйте секцию <Application> для работы с файлом cmPgSqlTarget.config – добавьте новый TargetId для ReadTarget, WriteTarget:

    Code Block
    languagexml
    <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

    Code Block
    languagexml
    <Targets>
        <Target Id="cmPgSqlTarget" Type="pgsql"/>
    </Targets>


Настройка записи событий в Syslog

Note

Возможности Syslog ограничены только записью событий (<WriteTargets>). В данном примере дополняется конфигурация из предыдущего примера с PostgreSQL.

  1. В каталоге 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.

      Code Block
      languagexml
      <Settings HostName="SRV-SYSLOG" Port="514" Protocol="UDP"/>


  2. В файле C:\inetpub\wwwroot\ls\clientApps.config отредактируйте секцию <Application> для работы с файлом cmSysLogTarget.config – добавьте новый TargetId для WriteTarget:

    Code Block
    languagexml
    <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

    Code Block
    languagexml
    <Targets>
    	<Target Id="cmPgSqlTarget" Type="pgsql"/>
    	<Target Id="cmSysLogTarget" Type="syslog"/>
    </Targets>


Attachments
previewfalse
uploadfalse
oldfalse
patterns*.config
sortByname


Divbox
styleposition: fixed;

Table of Contents
printablefalse


...