Анализ логов посредством Web’a = LogAnalyzer + rsyslog

Posted by

В предыдущей заметке я показал как настроить rsyslog для приёма логов по сети. Далее сделаем чтобы анализ логов производился посредством Web интерфейса, т. е. поднимем Web сервер на базе Apache2, прикрутим php и mysql, а также самый важный пакет .

ekzorchik@webserver:~$ sudo apt-get install apache2 php5 php5-mysql php5-gd

Reading package lists… Done

Building dependency tree

Reading state information… Done

The following extra packages will be installed:

apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-common fontconfig-config libapache2-mod-php5 libapr1

libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libcap2 libfontconfig1 libgd2-xpm libjpeg-turbo8 libjpeg8

libt1-5 libxpm4 php5-cli php5-common ssl-cert ttf-dejavu-core

Suggested packages:

apache2-doc apache2-suexec apache2-suexec-custom php-pear libgd-tools php5-suhosin openssl-blacklist

The following NEW packages will be installed:

apache2 apache2-mpm-prefork apache2-utils apache2.2-bin apache2.2-common fontconfig-config libapache2-mod-php5

libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libcap2 libfontconfig1 libgd2-xpm libjpeg-turbo8

libjpeg8 libt1-5 libxpm4 php5 php5-cli php5-common php5-gd php5-mysql ssl-cert ttf-dejavu-core

0 upgraded, 25 newly installed, 0 to remove and 106 not upgraded.

Need to get 10.8 MB of archives.

After this operation, 29.1 MB of additional disk space will be used.

Do you want to continue [Y/n]? y

 

Скачаем последнюю версию LogAnalyzer:

ekzorchik@webserver:~$ sudo mkdir /opt/log

ekzorchik@webserver:~$ cd /opt/log

ekzorchik@webserver:/opt/log$ sudo wget -c http://download.adiscon.com/loganalyzer/loganalyzer-3.6.2.tar.gz

—2013-01-10 12:21:03— http://download.adiscon.com/loganalyzer/loganalyzer-3.6.2.tar.gz

Resolving download.adiscon.com (download.adiscon.com)… 176.9.39.152

Connecting to download.adiscon.com (download.adiscon.com)|176.9.39.152|:80… connected.

HTTP request sent, awaiting response… 200 OK

Length: 1043284 (1019K) [application/x-gzip]

Saving to: `loganalyzer-3.6.2.tar.gz’

100%[===========================================================================>] 1,043,284 420K/s in 2.4s

2013-01-10 12:21:06 (420 KB/s) — `loganalyzer-3.6.2.tar.gz’ saved [1043284/1043284]

 

Распаковываем и переходим:

ekzorchik@webserver:/opt/log$ sudo tar -xzf loganalyzer-3.6.2.tar.gz && cd loganalyzer-3.6.2

http://download.adiscon.com/loganalyzer/loganalyzer-3.6.2.tar.gz

 

Теперь установим его в каталог на нашем веб-сервере:

ekzorchik@webserver:/opt/log/loganalyzer-3.6.2$ sudo mkdir /var/www/logs

ekzorchik@webserver:/opt/log/loganalyzer-3.6.2$ sudo cp -R src/* /var/www/logs/

ekzorchik@webserver:/opt/log/loganalyzer-3.6.2$ sudo cp contrib/* /var/www/logs/

ekzorchik@webserver:/opt/log/loganalyzer-3.6.2$ cd /var/www/logs/

ekzorchik@webserver:/var/www/logs$ sudo chmod +x configure.sh secure.sh

ekzorchik@webserver:/var/www/logs$ sudo ./configure.sh

 

Теперь создадим базу данных для работы LogAnalizer:

ekzorchik@webserver:~$ sudo mysql -u root -p

Enter password: <указываем пароль который мы указывали при установке>

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 53

Server version: 5.5.28-0ubuntu0.12.04.3 (Ubuntu)

Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

 

Создаём базу:

mysql> create database log_analyzer_users;

Query OK, 1 row affected (0.00 sec)

 

Выводим все базы:

mysql> show databases;

+———————+

| Database |

+———————+

| information_schema |

| |

| log_analyzer_users |

| mysql |

| performance_schema |

| test |

+———————+

6 rows in set (0.00 sec)

 

Создадим пользователя analyzer с паролем analyzer для доступа к этой базе:

mysql> grant all on log_analyzer_users.* to analyzer@’localhost’ identified by ‘analyzer’;

Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;

Query OK, 0 rows affected (0.00 sec)

 

Выходим из консоли управления MySQL:

mysql> quit

Bye

 

Открываем Web-интерфейс LogAnalyzer’а:

http://192.168.1.37/logs (в Вашем случае IP адрес другой) и нас приветствует первая ошибка. Нажимаем на гиперссылку «here» для начала прохода по всем шагам настройки.

Нажимаем на гиперссылку "here" для настроечного процесса.

 

Шаг №1:

Нажимаем Next

Шаг №1:

 

Шаг №2:

Проверяем наличие и права доступа к файлу config.php — далее нажимаем Next.

Проверяем наличие и права доступа к файлу config.php

 

Шаг №3:

Активируем возможно создания пользователей внутри LogAnalizer а с целью раздачи прав для аудита, выбираем:

Enable User Database — yes

Database name – log_analyzer_users

Database User – analyzer

Database Password — analyzer

Регистр символов очень важен!!!!

Активируем возможность создания пользователя для создания пользователей внутри LogAnalizer

 

Шаг №4:

На следующих двух шагах проверяется соединение с базой данных и в ней создаются соответствующие таблицы

Создаются таблицы для LogAnalizer.

 

Проверяются SQL запросы к LogAnalyzer

 

Далее создаём административную учетная запись (я ее назвал ekzorchik — 712mbddr@)

Создаём административную учётную запись

 

Теперь мы описываем параметры соединения с базой , см. рисунок, какие параметры вводить.

Source Type = MYSQL Native

Select View = Syslog Fields

Table type = MonitorWare

Database Host = localhost

Database Name = Syslog

Database Tablename = systemevents

Database User = rsyslog

Database Password = 712mbddr@

Описываем параметры соединения с базой rsyslog

 

И, наконец, все. Настройка завершена.

Жмем Finish

Настройка завершена. Поздравляю!

 

Открываем браузер и переходим по адресу для отображения логов посредством Web-интерфейса.

http://192.168.1.37/logs, перед нами окно входа, здесь вводятся данные административной учётной записи. (Login: ekzorchik Pass: 712mbddr@)

Открываем Web-интерфейс.

Результат аудита событий сервера после успешного ввода логина и пароля:

Результат успешного входа и отображения логов посредством Web интерфейса.

Отлично, теперь сделаем резеврную копию полученного конфигурационного файла:

ekzorchik@webserver:/var/www/logs$ sudo cp /var/www/logs/config.php /home/ekzorchik/config.php

Задача выполнена. Особое внимание стоит обратить пробелам при указании баз. На этом всё, с уважением ekzorchik.

2 комментария

  1. Добрый день. Настраиваю по статье Syslog.
    Вопрос: на шаге 7
    Database User = rsyslog
    Database Password = 712mbddr@
    Откуда они — по ходу статьи их не было — пробую писать свои -ошибка соединения с базой.

    1. Добрый вечер!
      Прошу читать заметку внимательнее в самом начале идет ссылка как поднять «Сервер централизованного сбора логов на базе rsyslog» — вот из нее и получаются эти данные.

Leave a Reply

Ваш e-mail не будет опубликован. Обязательные поля помечены *

три × 3 =