Логирование и аудит потенциально опасных событий на сервере Linux

Задача: при изменении критически важных файлов, запуск из под sudo, создание тоннелей SSH и переброс портов — отсылать уведомление об этом на почту.

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

Установка auditd:

Просмотр текущих действующих правил:

Стереть все действующие правила:

1) Настроить уведомление об изменении файлов /etc/paswd и /etc/shadow

, где -p — обозначает при каком условии будет сделана запись в журнал:

  • r — операция чтения данных из файла
  • w — операция записи данных в файл
  • x — операция исполнения файла
  • a — операция изменения атрибутов файла или директории

Что бы правила работали на постоянной основе, их нужно добавить в файл /etc/audit/rules.d/audit.rules после чего перезапустить демон

2) Настройка уведомления о выполнении команд от sudo/root:

3) Для того чтобы уведомления из журнала /etc/audit/audit.log отправлялись на почту, нужно установить wazuh-manager:

И соответственно добавить в конфигурационный файл /var/ossec/etc/ossec.conf, отслеживание изменений:

В этом же файле нужно настроить секцию касающуюся отправки уведомлений по email — отправитель, получатель.

Далее добавляем ключевые слова в /var/ossec/etc/lists/audit-keys, для фильтрации событий:

И добавить правило срабатывания в /var/ossec/etc/rules/local_rules.xml: