MAATRIX / Блог / Мониторинг вторжений на VPS: auditd, OSSEC и контроль целостности

Мониторинг вторжений на VPS: auditd, OSSEC и контроль целостности

Мониторинг вторжений на VPS: auditd и OSSEC
Блог MAATRIX · 2026-07-07

Взлом почти всегда тихий: злоумышленник входит, ставит бэкдор и месяцами сидит незамеченным. Система обнаружения вторжений ловит аномалии — новый файл в /bin, вход по SSH ночью, изменение критичного конфига. Настроим auditd для аудита на уровне ядра и OSSEC/Wazuh как полноценный HIDS.

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

auditd: аудит на уровне ядра

auditd пишет в журнал каждое отслеживаемое событие ядра: доступ к файлам, вызовы, запуск процессов. Это фундамент — работает без агентов и почти не грузит систему.

apt update && apt install -y auditd audispd-plugins
systemctl enable --now auditd

Добавляем правила слежки за критичными файлами в /etc/audit/rules.d/hardening.rules:

-w /etc/passwd -p wa -k identity
-w /etc/shadow -p wa -k identity
-w /etc/ssh/sshd_config -p wa -k sshd
-w /etc/sudoers -p wa -k sudo
-w /bin/ -p wa -k bin_changes
-a always,exit -F arch=b64 -S execve -F euid=0 -k root_exec
augenrules --load
auditctl -l

Флаги -p wa следят за записью и изменением атрибутов, -k задаёт метку для поиска.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS с полным контролем

Читаем журнал аудита

Ищем события по меткам через ausearch и сводки через aureport:

# кто трогал sshd_config
ausearch -k sshd -i
# все запуски от root
ausearch -k root_exec -i
# сводка по аутентификации
aureport -au --summary
# неудачные логины
aureport -au --failed

Если в выводе появились изменения /etc/passwd или запуск подозрительного бинарника из /tmp — это красный флаг для расследования.

Флаг -i в ausearch делает вывод человекочитаемым: числовые UID превращаются в имена, коды syscall — в названия, timestamp — в дату. Метки (-k) — это ваш язык поиска: логично называть их по смыслу (identity, sshd, sudo), чтобы потом быстро выбирать нужный класс событий. Полезно завести отдельное правило на запуск процессов из временных каталогов — атакующие часто складывают полезную нагрузку в /tmp или /dev/shm: -a always,exit -F arch=b64 -S execve -F dir=/tmp -k tmp_exec.

OSSEC/Wazuh: полноценный HIDS

auditd собирает сырые события, а OSSEC (и его форк Wazuh) анализирует их, коррелирует и шлёт алерты. Это host-based IDS: контроль целостности файлов, анализ логов, детект руткитов, активный отклик.

curl -sO https://packages.wazuh.com/4.x/wazuh-install.sh
bash wazuh-install.sh -a

Для лёгкого VPS хватит одного агента без тяжёлого дашборда. Ключевые возможности из коробки:

  • FIM (File Integrity Monitoring) — хеширует файлы и алертит на изменения
  • Rootcheck — ищет признаки руткитов и скрытых процессов
  • Log analysis — разбирает auth.log, syslog, nginx на аномалии
  • Active response — сам банит IP при атаке

Контроль целостности файлов (FIM)

Если нет ресурсов под Wazuh, лёгкий контроль целостности даёт AIDE. Он делает эталонный снимок и сравнивает состояние файлов по расписанию:

apt install -y aide
aideinit
mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
# проверка изменений:
aide --check

Заворачиваем в cron с алертом на почту:

0 4 * * * /usr/bin/aide --check | mail -s "AIDE report $(hostname)" admin@example.com

Любое неожиданное изменение системного бинарника или конфига попадёт в отчёт наутро. Важно хранить эталонную базу AIDE вне сервера (например, в бэкапе или на отдельном хосте): если злоумышленник получил root, он может подменить и базу, чтобы скрыть следы. Сравнение с внешней копией базы лишает его этой возможности.

Алерты и быстрый отклик

IDS без уведомлений бесполезен — никто не читает логи руками. Настройте отправку критичных событий на почту или в Telegram-бота через простой скрипт на logwatch/rsyslog. Плюс базовый fail2ban как активный отклик первого уровня.

Всё это требует стабильного сервера с честным root-доступом — на shared-хостинге auditd и ядерный аудит недоступны. VPS MAATRIX даёт полный root на AMD EPYC + NVMe от $8/мес: auditd не тормозит, логи читаются мгновенно, а ежедневные бэкапы дают точку отката, если вторжение всё же случилось. Локации UK, США и РФ, оплата картой РФ, СБП, криптой или токеном MAAT.

Нужен сервер под эту задачу?

Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK, США и РФ. Оплата картой РФ и по СБП.

Арендовать VPS с полным контролем

Обсудить статью, задать вопрос или начать новую тему

Есть вопрос по этой статье, идея для обсуждения или просто хотите поделиться опытом? Сообщество MAATRIX ждёт. Для общения, пожалуйста, зарегистрируйтесь в нашем личном кабинете.

Перейти в сообщество →

Частые вопросы

auditd сильно грузит сервер?

При разумном наборе правил — почти нет. Проблемы начинаются, если следить за всей файловой системой; следите точечно за критичными путями.

OSSEC или Wazuh?

Wazuh — активно развиваемый форк OSSEC с современным дашбордом и интеграциями. Для нового проекта берите Wazuh; чистый OSSEC — если нужен минимализм.

Что делать при срабатывании алерта?

Изолировать сервер (закрыть входящие), снять образ для анализа, проверить процессы и сетевые соединения, восстановиться из чистого бэкапа. Не чините взломанную систему на месте.