go-audit
go-audit - альтернатива демону auditd, который поставляется со многими дистрибутивами. Проект от Slack, написанный на Go, который предоставляет альтернативный способ взаимодействия с auditd, минуя работу через ausearch или логи напрямую. Что делает go-audit…
Что это
go-audit - альтернатива демону auditd, который поставляется со многими дистрибутивами.
Возможности и детали
- Проект от Slack, написанный на Go, который предоставляет альтернативный способ взаимодействия с auditd, минуя работу через ausearch или логи напрямую;
- Что делает go-audit;
- Это демон, который подключается напрямую к audit netlink socket (/dev/audit);
- Слушает все события ядра, передаваемые через audit subsystem (например, запуск процессов, доступ к файлам, ошибки и т.д.);
- Подключается к ядру Linux через netlink;
- Парсит эти события в удобную JSON-структуру;
- Может логировать их в stdout, файл или удалённый сервер;
- Фильтрует события по типу и передает их в другие системы (например, через syslog, HTTP или Kafka).
Зачем нужен
Это самостоятельный сервис, который можно развернуть в своей инфраструктуре и связать с уже используемыми системами. Такой подход даёт больше контроля над настройками и данными, но требует заранее продумать обновление, доступ и резервное копирование.
Когда пригодится
- Для проверки конфигурации и поиска потенциально опасных настроек;
- Для усиления защиты сервиса без полностью ручной настройки каждого механизма;
- Для включения инструмента в регулярные проверки и процесс реагирования на инциденты.
Что учесть
Перед внедрением go-audit оцените требования к ресурсам, обновлению, резервному копированию, аутентификации и сетевому доступу. Начните с тестового окружения, зафиксируйте рабочую конфигурацию и только после этого переносите инструмент в постоянный процесс.