Безопасность превыше всего. Лучше спать спокойно, чем проводить выходные за консолью, восстанавливая убитый сервак.
История о том, как я ставил SNORT + OINKMASTER + BASE
1. Установка SNORT
Идем в /usr/ports/security/snort/. Собираем SNORT (с опциями DYNAMIC и MYSQL):
# make install clean
Прописываем его в rc.conf:
snort_enable="YES"
Начиная где-то с версии 2.4, в комплекте со snort НЕ предоставляются правила. По-этому, их надо скачивать самостоятельно. Существует два способа. Первый - скачивать руками, второй автоматизировать процесс через OINKMASTER. Так или иначе, надо будет зарегистрироваться на сайте www.snort.org, а для OINKMASTER надо еще сгенерировать OINK CODE в своем аккаунте на snort.org.
2. Установка и настройка OINKMASTER
Идем в /usr/ports/security/oinkmaster и ставим порт:
# make install clean
После установки, в директории /usr/local/etc появляется файл oinkmaster.conf.sample. Его надо переименовать в oinkmaster.conf и поправить в нем следующие строчки:
# Example for Snort-current ("current" means cvs snapshots).
url = http://www.snort.org/pub-bin/oinkmaster.cgi/<strong>oinkcode</strong>/snortrules-snapshot-CURRENT.tar.gz
tmpdir = /tmp/
Вместо oinkcode надо вставить свой код, который мы получили после регистрации на сайте snort.org.
Чтобы теперь получить последние правила, надо выполнить команду:
# oinkmaster -o /usr/local/etc/snort/rules
Правила скачаются в папку /usr/local/etc/snort/rules. Убедитесь, что папка существует. По идеи, она должна автоматически создаться после установки SNORT.
3. Настройка SNORT
Все файлы настроек хранятся в папке /usr/local/etc/snort
Первым делом редактируем файл snort.conf, правим в нем следующие строчки:
# Наша подсеть
var HOME_NET 192.168.0.0/24
# Порты, на которых висит апач
portvar HTTP_PORTS [80,8080] // Интересно, надо ли сюда вписывать порт 443
# Где храить логи
output database: log, mysql, user=snort password=test dbname=snort host=localhost
Чтобы теперь логи хранились в базе данных, надо создать саму базу данных:
# mysql -u root -p
Password: вводим пароль
mysql> create database snort;
mysql> grant CREATE, INSERT, SELECT, DELETE, UPDATE on snort.* to snort@localhost;
mysql> SET PASSWORD FOR 'snort'@'localhost'=PASSWORD('password');
mysql> exit
Теперь ее надо заполнить. Файл create_mysql я взял в папке /usr/ports/security/snort/work/snort-2.8.1/schemas. Если его там нет, то просто соберите порт (make).
# mysql -u root -p ~/create_mysql snort
Пробуем запустить snort:
# /usr/local/etc/rc.d/snort start
Смотрит /var/log/messages. Если все запустилось без ошибок, то хорошо )))
4. Установка и настройка BASE
Сначала надо поставить pear. Идем в /usr/ports/devel/pear
# make install clean
Теперь надо еще несколько пакетов к pear:
# pear install Image_Color
# pear install Log
# pear install Numbers_Roman
# pear install Numbers_Words-alpha
# pear install Image_Canvas-alpha
# pear install Image_Graph-alpha
Теперь надо поставить adodb. Я ставил версию 5.02а.
# cd /usr/ports/databases/adodb5
# make install clean
BASE в портах я не нашел. Может, плохо искал. Его можно скачать с сайта www.secureideas.sf.net
Распаковываем его в любую папку на веб сервере. В моем случае - это /usr/local/www/base. В этой папке переименовываем файл base_conf.php.dist в base_conf.php. Редактируем в файле следующие строки:
# Включаем русский язык
$BASE_Language = 'russian';
# Если установить 0, то не будет авторизации при доступе к BASE. ВНИМАНИЕ! Чтобы инициализировать BASE, надо сначала установить значение 0!
$Use_Auth_System = 1;
# Если, например, BASE доступен через http://localhost/base, то заносим значение /base.
# Я использую виртуальный домен www.base.server.ru, по этому ничего не вношу.
$BASE_urlpath = '';
# Указываем путь до adodb
$DBlib_path = '/usr/local/share/adodb';
# Параметры для подключения к базе данных
$alert_dbname = 'snort';
$alert_host = 'localhost';
$alert_port = '';
$alert_user = 'snort';
$alert_password = 'mypassword';
Все. Сохраняем файл и закрываем его. Открываем BASE через браузер. Он скажет, что у нас не оптимизирована база данных и предложит ее оптимизировать. Соглашайтесь. После этого установка BASE завершена.