Audit — различия между версиями

Материал из Rosalab Wiki
Перейти к: навигация, поиск
(Новая страница: «= Аудит в ROSA Linux = == Введение == Аудит (audit) — это механизм аудита безопасности в ядре Linux, кот…»)
 
Строка 13: Строка 13:
 
== Установка auditd ==
 
== Установка auditd ==
 
Пакет предустановлен в большинстве дистрибутивов ROSA, при необходимости установка производится так:
 
Пакет предустановлен в большинстве дистрибутивов ROSA, при необходимости установка производится так:
  sudo dnf install auditd
+
  sudo dnf install audit
  
 
== Управление службой auditd ==
 
== Управление службой auditd ==
Строка 32: Строка 32:
 
* log_group: группа, которой принадлежит журнальный файл аудита.
 
* log_group: группа, которой принадлежит журнальный файл аудита.
 
* write_logs: писать ли (yes — писать, no — не писать) события аудита в файл <code>/var/log/audit/audit.log</code>. Можно выставить no, тогда события аудита будут попадать в systemd-journald, но не будут дублироваться в еще один файл. Утилита <code>ausearch</code> читает именно этот файл, поэтому ей нельзя будет пользоваться.
 
* write_logs: писать ли (yes — писать, no — не писать) события аудита в файл <code>/var/log/audit/audit.log</code>. Можно выставить no, тогда события аудита будут попадать в systemd-journald, но не будут дублироваться в еще один файл. Утилита <code>ausearch</code> читает именно этот файл, поэтому ей нельзя будет пользоваться.
 +
 +
Больше информации в <code>man auditd.conf</code>.
 +
 +
== Настройка правил аудита ==
 +
Правила аудита — это инструкции, какие события нужно подвергать аудиту, то есть логировать.
 +
 +
Правила аудита задаются с помощью утилиты <code>auditctl</code>, которая по сокету взаимодействует с демоном auditd и передает ему команды.
 +
 +
При запуске auditd читаются правила из файлов <code>/etc/audit/rules.d/*.rules</code>. Каждая строка в этих файлах представляет собой аргументы для <code>auditctl</code>. Например, строка:
 +
-w /etc/passwd -p wa -k passwd-file
 +
эквивалентна запуску команды:
 +
sudo auditctl -w /etc/passwd -p wa -k passwd-file
 +
Однако запись в файл позволяет прогружать правила аудита автоматически при запуске ОС.

Версия 08:31, 10 марта 2023

Аудит в ROSA Linux

Введение

Аудит (audit) — это механизм аудита безопасности в ядре Linux, который позволяет отслеживать события в системе. Он может использоваться для мониторинга доступа к файлам, сетевых подключений, а также других системных событий.

В пространстве пользователя работает демон auditd (рассматриваем именно его, хотя возможны иные реализации), который получает от ядра ОС информацию о произошедших событиях и обрабатывает ее в соответствии с настройками.

Ведение логов аудита обычно решает 2 задачи:

  • протоколирование происходящего для разбора в случае действий злоумышленника;
  • протоколирование происходящего для отладки работы программ.

Поскольку получивший доступ к компьютеру (серверу) злоумышленник может получить доступ к удалению логов аудита, рекомендуется в режиме реального времени отправлять их на внешний сервер. Пример такой настройки рассмотрен в статье Сервер логирования Journald.

Установка auditd

Пакет предустановлен в большинстве дистрибутивов ROSA, при необходимости установка производится так:

sudo dnf install audit

Управление службой auditd

Служба auditd включается автоматически, однако при необходимости ее можно включить в автозапуск так:

sudo systemctl enable auditd

Выключить так:

sudo systemctl mask auditd

Остановить так:

sudo systemctl kill auditd

Настройка auditd

Конфигурационный файл находится по адресу /etc/audit/auditd.conf. Его содержимое по умолчанию подходит для работы.

Некоторые из наиболее важных параметров:

  • max_log_file: максимальный размер журнального файла аудита в мегабайтах.
  • num_logs: максимальное количество журнальных файлов аудита.
  • log_file: путь к журнальному файлу аудита.
  • log_group: группа, которой принадлежит журнальный файл аудита.
  • write_logs: писать ли (yes — писать, no — не писать) события аудита в файл /var/log/audit/audit.log. Можно выставить no, тогда события аудита будут попадать в systemd-journald, но не будут дублироваться в еще один файл. Утилита ausearch читает именно этот файл, поэтому ей нельзя будет пользоваться.

Больше информации в man auditd.conf.

Настройка правил аудита

Правила аудита — это инструкции, какие события нужно подвергать аудиту, то есть логировать.

Правила аудита задаются с помощью утилиты auditctl, которая по сокету взаимодействует с демоном auditd и передает ему команды.

При запуске auditd читаются правила из файлов /etc/audit/rules.d/*.rules. Каждая строка в этих файлах представляет собой аргументы для auditctl. Например, строка:

-w /etc/passwd -p wa -k passwd-file

эквивалентна запуску команды:

sudo auditctl -w /etc/passwd -p wa -k passwd-file

Однако запись в файл позволяет прогружать правила аудита автоматически при запуске ОС.