Установка PSAD на Ubuntu 12.04 LTS server

Простая пошаговая инструкция:

  • Установка PSAD (Port Scan Attack Detector) на Ubuntu 12.04 LTS server и позже.
  • psad - это три небольших сервиса, запускаемые на Linux машинах и анализирующие журнал iptables на предмет сканирования портов и подозрительного трафика.
  • Начиная с версии 2.2 полностью поддерживается протокол IPv6.

Требования:

  • Протестировано на Ubuntu 12.04 LTS server.
  • Должно работать на большинстве Ubuntu/Debian основанных дистрибутивах.

1. Скачать и установить последнюю версию PSAD.

Скачайте с сайта CipherDyne PSAD последнюю версию source tar archive (на момент написания это версия 2.2.1).
В коммандной строке выполните:

sudo su
mkdir /tmp/.psad
cd /tmp/.psad
wget http://www.cipherdyne.org/psad/download/psad-2.2.1.tar.gz
tar -zxvf psad-2.2.1.tar.gz
cd psad-2.2.1
./install.pl 
cd /tmp
rm -R .psad
exit

2. Настройка PSAD.

В коммандной строке выполните:

vi /etc/psad/psad.conf

EMAIL_ADDRESSES - укажите ваш email адрес или несколько адресов через запятую. Для отправки почты должен быть установлен пакет mailutils с Internet mail.
HOSTNAME - устанавливается во время инсталяции - проверьте, так как нужен правильный FQDN.
ENABLE_AUTO_IDS - установите Y, если хотите, что бы при обнаружении угрозы PSAD блокировал IP адрес. По умолчанию N - будет отправляться только отчет на почту. Полезно для настройки и тестирования. Убедитесь, что на производственном сервере (production use) установлен Y.
ENABLE_AUTO_IDS_EMAILS - установите Y (по умолчанию), если хотите получать оповещения о срабатывании PSAD на почту.
ALERT_ALL - если установлено Y, то на почту будут приходить сообщения о всех новых пакетах с одного IP адреса. При N - только при достижении уровня безопасности.
EMAIL_ALERT_DANGER_LEVEL - посылать почтовые оповещения при достижении указанного уровня безопасности от 1 до 5. По умолчанию стоит 1 и PSAD может завалить ваш почтовый ящик избыточной информацией. Уровня 3, как правило, достаточно в большинстве случаев.

Что бы добавить localhost в исключения, откройте на редактирование файл:

vi /etc/psad/auto_dl

и вставьте строку:

127.0.0.1       0;          # Ignore this IP.

3. Добавьте правила iptables LOG для IPv4 и IPv6.

Если вы используете iptables добавьте следующие правила:

iptables -A INPUT -j LOG
iptables -A FORWARD -j LOG
ip6tables -A INPUT -j LOG
ip6tables -A FORWARD -j LOG

По умолчанию iptables пишет логи в /var/log/syslog, в то время как PSAD по умолчанию ищет записи iptables в /var/log/messages. Либо настройте дублирование записей iptables в /var/log/messages, либо укажите путь к syslog или другому файлу в параметре IPT_SYSLOG_FILE конфигурационного файла PSAD /etc/psad/psad.conf. Параметр ENABLE_SYSLOG_FILE должен быть выставлен в Y.

Если вы используйте штатный файрвол Ubuntu UFW, то в параметре IPT_SYSLOG_FILE конфигурационного файла PSAD /etc/psad/psad.conf достаточно указать путь к файлу журнала UFW /var/log/ufw.log. При этом в UFW должно быть включено журналирование не ниже уровня medium:

sudo ufw logging medium
sudo ufw reload

4. Перезагрузка и обновление PSAD.

Что бы перезагрузить, обновить сигнатуры PSAD выполните следующее:

psad -R
psad --sig-update
psad -H

Проверить состояние PSAD:

psad -S

Разблокировать все заблокированные IP адреса:

psad -F

5. Возможные проблемы.

PSAD присылает сообщения об ошибках:

[psad-error] Exceeded max disk utilization for /var/log/psad on localhost
[psad-fatal] Stopping psad on localhost
[psad-error] Could not reduce disk utilization on localhost

Дело в том, что в PSAD есть встроенный мониторинг свободного места на диске. И при достижении 95% заполнения он бьет тревогу и даже пытается очистить собственные логи.
В конфигурационном файле /etc/psad/psad.conf за это отвечает параметр DISK_MAX_PERCENTAGE.
По умолчанию установлено значение 95%, т.е. когда останется менее 5% свободного места на диске PSAD начнет присылать сообщения об ошибке. Можно увеличить это значение, например, до 99% или вовсе отключить проверку свободного места установив значение в 0.

Замените
DISK_MAX_PERCENTAGE         95;
на
DISK_MAX_PERCENTAGE         0;

И перезагрузите PSAD:

psad -R

При старте PSAD сообщает, что не существует pid процесса psadwatchd

psad: pid file /var/run/psad/psadwatchd.pid does not exist for psadwatchd on HOSTNAME

Дело в том, что начиная с версии psad-2.2.3 (03/01/2014) используется upstart в связи с чем добавилась новая переменная 'ENABLE_PSADWATCHD' для управления процессом psadwatchd, который мониторит перезапуск psad. По умолчанию, теперь, psadwatchd не запускается, так как значение переменной установлено "N".

Источник: How to install PSAD Intrusion Detection on Ubuntu 12.04 LTS server

Метки: , . Закладка Постоянная ссылка.

Добавить комментарий

Ваш e-mail не будет опубликован.

*