Безопасность превыше всего. Лучше спать спокойно, чем проводить выходные за консолью, восстанавливая убитый сервак.
История о том, как я ставил 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 [fusion_builder_container hundred_percent="yes" overflow="visible"][fusion_builder_row][fusion_builder_column type="1_1" background_position="left top" background_color="" border_size="" border_color="" border_style="solid" spacing="yes" background_image="" background_repeat="no-repeat" padding="" margin_top="0px" margin_bottom="0px" class="" id="" animation_type="" animation_speed="0.3" animation_direction="left" hide_on_mobile="no" center_content="no" min_height="none"][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 завершена.[/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]