Назад | Перейти на главную страницу

Есть ли программа для отслеживания пользователей cli linux?

Ищу программу для отслеживания пользователей из CLI. Может быть, в настоящее время есть какое-то решение, которое анализирует файлы журналов и файлы .bash_history, чтобы распечатать сводку того, что они сделали, когда они вошли в журнал и т.д.?

Я думаю, что вы здесь ищете функциональность аудита, которая является частью Linux. Совершенно неприятно заниматься настройкой, но это позволит вам отслеживать все, что происходит, на выбранном вами уровне. Все выполняемые команды и их аргументы, все файлы, в которые записываются и т. Д. Если задействовано ядро, вы можете перехватить вызов.

Краткое руководство по этому поводу см. http://www.novell.com/documentation/sled10/pdfdoc/auditqs_sp2/auditqs_sp2.pdf

редактировать Я потратил несколько минут, играя с auditd, и придумал для вас этот рецепт:

auditctl -a entry,always -F arch=`arch` -F euid!=0 -S execve

Это будет регистрировать каждое выполнение программы в журнале аудита (при условии, что auditd запущен и настроен). Он не будет регистрировать что-то вроде установки "FOO = bar" в качестве переменной в bash, но он будет регистрировать vim $FOO показывая, что vim использовался для открытия bar. Это также отловит все, что запускается в сценарии, вызываемом vim и т. Д. Я добавил фильтр, чтобы исключить все, что запускается root, потому что существует ряд автоматизированных процессов, которые быстро загромождают вещи в моей системе. Вы можете установить его на uid / euid> = 1000 (обычная отправная точка для пользователей, а не для системных учетных записей).

Достойная документация представляла собой сочетание http://www.novell.com/documentation/sled10/pdfdoc/audit_sp2/audit_sp2.pdf и man auditctl.

Я вижу 3 разных способа делать то, что вы хотите:

  1. Использовать Учет процессов
  2. Напишите оболочку оболочки на основе сценария или аналогичного и сделайте ее оболочкой по умолчанию
  3. Или используйте любопытный который использует LD_PRELOAD для обертывания системных вызовов exec и записывает их в системный журнал

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