Библиотека сайта rus-linux.net
Ошибка базы данных: Table 'a111530_forumnew.rlf1_users' doesn't exist
Установка и настройка системы обнаружения вторжения (IDS) с пакетами Snort, ACIDBASE, MySQL и Apache2 в Ubuntu 9.04 с помощью менеджера пакетов Synaptic.
Оригинал: Installation & Configuration Of Intrusion Detection With
Snort, ACIDBASE, MySQL, And Apache2 On Ubuntu 9.04 Using SPM
Автор Greg
Дата публикации: 21 сентября 2009г.
Перевод: С.Владимирский
Дата перевода: 2 октября 2009г.
Данное руководство описывает, как установить и настроить систему обнаружения вторжения (IDS) с пакетами Snort, ACIDBASE (основной модуль анализа и обеспечения безопасности), MySQL и Apache2 в Ubuntu 9.04 с помощью менеджера пакетов Synaptic Ubuntu. Snort поможет вам в мониторинге вашей сети и предупредит о возможных угрозах. При этом Snort сформирует файлы протоколов для базы данных MySQL, а ACIDBASE позволит отобразить их в графическом интерфейсе в веб-браузере.
1. Подготовка системы и установка программного обеспечения.
1.1 Установка.
Загрузите 32-битную или 64-битную версию Desktop Ubuntu 9.04 отсюда: http://www.ubuntu.com/getubuntu/download
1.2 Системные и сетевые настройки
Подключите ваш компьютер к сети. Хотя система может работать с самыми разными настройками, предпочтительна следующая конфигурация:
- Размещение в демилитаризованной зоне (DMZ).
- Статический IP-адрес, скрытый с помощью NAT за файерволом.
- Подключение к порту мониторинга на сетевом коммутаторе (SWITCH).
Создайте нового администратора с именем <ваше_имя> и паролем <ваш_пароль>.
1.3 Установка программного обеспечения.
Первое, что необходимо сделать после завершения установки, - установить
все рекомендованные Ubuntu обновления. Для доступа к обновлениям перейдите в
меню: System > Administration > Update Manager (Система >
Администрирование > Менеджер обновлений
). Введите свой пароль и
выберите Check (Проверить)
. Выберите Install Updates (Установить обновления)
.
С рабочего стола перейдите в System > Administration >
Synaptic Package Manager (Система > Администрирование > Менеджер
пакетов Synaptic)
. Введите свой пароль и выберите Search (Поиск)
.
Найдите и установите следующие пакеты:
- Acidbase со всеми зависимыми пакетами
- Snort-MySQL со всеми зависимыми пакетами
- MySql-server-5.0 со всеми зависимыми пакетами
- Libpcap0.8-dev
- libmysqlclient15-dev
- MySql-client-5.0
- Bison
- Flex
- Apache2
- Libapache2-mod-php5
- Php5-gd
- Php5-mysql
- Libphp-adodb
- Php-pear
- SSH
2. Получите права суперпользователя
С рабочего стола перейдите в меню: Applications > Accessories > Terminal (Приложения > Дополнения > Терминал)
и введите команду:
$ sudo -i
$ введите пароль
3. Настройка Snort
Для того, чтобы установить индивидуальные настройки, необходимо изменить файл настроек snort.conf
.
С помощью текcтового редактора (nano, vi, vim или другого) откройте файл /etc/snort/snort.conf
.
# vim /etc/snort/snort.conf
Измените переменную var HOME_NET any на var HOME_NET 192.168.1.0/24 (адрес вашей домашней сети может отличаться от адреса 192.168.1.0). Если вы ведете мониторинг нескольких сетей, необходимо указать все эти сети следующим образом: var HOME_NET [192.168.1.0/24,10.10.1.0/24]. Измените var EXTERNAL_NET any на var EXTERNAL_NET !$HOME_NET (устанавливаются все переменные, кроме внешней переменной HOME_NET).
Измените var RULE_PATH ../rules на var RULE_PATH /etc/snort/rules. Прокрутите список до того места, где указана строка # output database: log, mysql, user=
, удалите знак #
из начала строки.
Пример: output database: log, mysql, user=<your_username> password=<your_password> dbname=snort host=localhost
(смотрите выше, когда создавался новый пользователь).
Запишите имя пользователя, пароль и название базы данных (dbname). При установке базы данных MySQL вам потребуются эти данные. Сохраните изменения и выйдите.
4. Установка баз данных Snort и Archive в MySQL
4.1 Установка MySQL
Войдите на сервер MySQL.
# mysql -u root -p
Иногда бывает так, что пароль не установлен, так что просто нажмите 'Enter'.
Если вход не выполняется, попробуйте еще раз набрать указанную выше команду и введите ВАШ_ПАРОЛЬ
.
Если пароль отсутствует, вам необходимо установить пароль для учетной записи суперпользователя.
Примечание: Когда вы на сервере MySQL, в приглашении вместо символа'#'
отображается группа символов 'mysql>'
mysql> create user <your_username>@localhost;
mysql> SET PASSWORD FOR <your_username>r@localhost=PASSWORD(<your_password>);
mysql> SET PASSWORD FOR root@localhost=PASSWORD(<your_password>);
4.2 Создание базы данных Snort
mysql> create database snort; mysql> grant INSERT,SELECT on root.* to snort@localhost; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to <your_username>@localhost; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on snort.* to snort;
4.3 Создание базы данных Archive
mysql> create database archive; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on archive.* to <your_username>@localhost; mysql> grant CREATE,INSERT,SELECT,DELETE,UPDATE on archive.* to archive; mysql> exit
4.4 Создание таблиц в базах данных Snort и Archive
Мы будем использовать схему Snort для компоновки баз данных Snort и Archive.
# cd /usr/share/doc/snort-mysql # zcat create_mysql.gz | mysql -u <your_username> -h localhost -p snort # zcat create_mysql.gz | mysql -u <your_username> -h localhost -p archive
4.5 Подтверждение создания баз данных и вновь созданных таблиц.
Войдите на сервер MySQL и проверьте базы данных, которые мы только что создали, и таблицы, размещенные в этих базах данных. Если все было успешно создано, вы увидите четыре (4) базы данных (mysql, test, snort и archive) в базах данных mysql и приблизительно по 16 таблиц в каждой базе данных.
# mysql -u root -p mysql> show databases; mysql> use snort; mysql> show tables; mysql> use archive; mysql> show tables; mysql> exit
4.6 Тестирование Snort
# snort -c /etc/snort/snort.conf
Если все прошло успешно, вы должны увидеть ответ в кодах ascii.
Для завершения теста нажмите ctrl + c
5. Настройка Apache2
На компьютере должен быть уже установлен пакет Apache2.
С помощью вашего любимого текстового редактора создайте файл с именем test.php
в папке /var/www/
.
# vim /var/www/test.php
Запишите в нем:
<?php phpinfo(); ?>
Сохраните изменения и закройте этот файл.
Отредактируйте файлt /etc/php5/apache2/php.ini
# vim /etc/php5/apache2/php.ini
Под строкой "Dynamic Extensions" добавьте следующее:
extension=mysql.so extension=gd.so
Перезагрузите Apache2.
# /etc/init.d/apache2 restart
Получите IP-адрес вашего рабочего компьютера.
# ifconfig -a
Откройте веб-браузер и перейдите по адресу http://ВАШ_IP_АДРЕС/test.php
.
Если все прошло успешно, отобразится информация по РНР.
6. Конфигурирование папок
Переместите ADOdb в папку /var/www
.
# mv /usr/share/php/adodb /var/www/
Создайте папку с именем web
в www
и переместите в нее ACIDBASE.
# mkdir /var/www/web # mv /usr/share/acidbase /var/www/web/
Временно разрешите запись в папку базы acidbase для ее установки.
# chmod 777 /var/www/web/acidbase
Переименуйте существующий файл base_conf.php
в base_conf.old
.
# cd /var/www/web/acidbase # mv base_conf.php base_conf.old
Для работы в ACIDBASE выполните команду:
# pear install Image_Color
7. Установка ACIDBASE для баз данных Snort и Archive
7.1 Установка базы данных Snort через веб-браузер
Откройте веб-браузер и перейдите по ссылке http://ВАШ_IP_АДРЕС/web/acidbase/setup
. На первой странице щелкните мышкой "Продолжить".
Шаг 1 из 5:
Введите путь к ADODB. Это /var/www/adodb
.
Шаг 2 из 5:
Main Database type = MySQL
(Тип основной базы данных),
Database name = snort
(База данных Snort),
Database Host = localhost
(Локальное расположение базы данных Snort),
Database username = <ваше_имя_пользователя>
(Имя пользователя базой данных Snort),
Database Password = <ваш_пароль>
(Пароль для базы данных Snort)
Archive Database type = MySQL
(Тип базы данных Archive),
Database name = archive
(База данных Archive),
Database Host = localhost
(Локальное расположение базы данных Archive),
Database username = <ваше_имя_пользователя>
(Имя пользователя базой данных Archive),
Database Password = <ваш_пароль>
(Пароль для базы данных Archive)
Шаг 3 из 5:
Если вы хотите использовать аутентификацию, введите имя пользователя и пароль (user: <ваше_имя>
, password: <ваш_пароль>
).
Шаг 4 из 5:
Щелкните мышкой Create BASE AG
(Создать BASE AG).
Шаг 5 из 5:
Когда шаг 4 выполнен, в нижней части щелкните: Now continue to step 5 (Теперь переходите к шагу 5)
.
Добавьте эту страницу в закладки.
7.2 Создайте папку для базы данных Archive ACIDBASE
Чтобы архивная база данных корректно работала, в папке ACIDBASE должна быть создана папка archive
.
# mkdir /var/www/web/acidbase/archive # cd /var/www/web/acidbase # cp -R * /var/www/web/acidbase/archive # chmod 777 /var/www/web/acidbase/archive
Переименуйте существующий файл base_conf.php
в base_conf.old
.
# cd /var/www/web/acidbase/archive # mv base_conf.php base_conf.old
7.3 Установка базы данных Archive через веб-браузер.
Откройте веб-браузер и перейдите по адресу http://ВАШ_IP_АДРЕС/web/acidbase/archive/setup
.
На первой странице щелкните "Продолжить".
Шаг 1 из 5:
Введите путь к ADODB. Это /var/www/adodb.
>
Шаг 2 из 5:
Archive Database type = MySQL
(Тип базы данных),
Database name = archive
(База данных Archive),
Database Host = localhost
(Локальное расположение базы данных Archive),
Database username = <ваше_имя_пользователя>
(Имя пользователя базой данных Archive),
Database Password = <ваш_пароль>
(Пароль для базы данных Archive)
Шаг 3 из 5:
Если вы хотите использовать аутентификацию, введите имя пользователя и пароль(user: <ваше_имя_пользователя>
, password: <ваш_пароль>
).
Шаг 4 из 5:
Щелкните на Create BASE AG (Создать BASE AG)
.
Шаг 5 из 5:
Когда шаг 4 пройден, внизу щелкните: Now continue to step 5
(Теперь переходите к шагу 5).
8. Запуск Snort и проверка статуса сервисов.
Чтобы запустить Snort наберите в режиме терминала:
# snort -c /etc/snort/snort.conf -i eth0 -D
Эта команда запускает snort с использованием интерфейса eth0 в демо-режиме.
Вы можете убедиться, что сервис запущен, с помощью следующей команды:
# ps aux | grep snort
Если сервис работает, вы увидите что-то, похожее на следующее snort -c /etc/snort/snort.conf -i eth0 -D
.
Убедитесь, что все необходимые сервисы работают путем выполнения следующих команд:
# /etc/init.d/mysql status # /etc/init.d/apache2 status # /etc/init.d/snort status
Если сервисы работают, вы увидите ответное сообщение <OK>
.
Если нужно, запустите команду
# /etc/init.d/<service> restart
для каждого из сервисов, который должен быть перезапущен.