Может ли пользовательская активность регистрироваться на Unix-сервере с помощью bash или Python? - PullRequest
0 голосов
/ 14 октября 2011

Я работаю на сервере вместе с рядом других людей, которые из-за необъяснимых случаев вносят изменения в файлы, символические ссылки и т. Д. К сожалению, все имеют одинаковый уровень прав файловой системы. Существует ли простой способ записи активности: время входа / выхода из системы (я знаю, что команда 'last' показывает это), файлы, которые были изменены (удалены, добавлены и т. Д.), А также созданы, изменены или удалены символические ссылки? Я задаюсь вопросом, проще ли сделать что-то подобное в bash или Python, и в каком направлении идти? Спасибо за помощь.

1 Ответ

1 голос
/ 14 октября 2011

Во-первых, вы действительно должны заблокировать свои учетные записи на вашем сервере. Но если вы действительно хотите отслеживать активность в файловой системе, у вас есть несколько вариантов.

  1. Напишите скрипт для анализа истории bash при выходе из системы и сохраните время выхода из системы (плохо)
  2. Установите iwatch , затем укажите его в местах для отслеживания и напишите сценарий для записи соответствующей информации всякий раз, когда что-то изменяется в файле журнала.

Если вы хотите отслеживать активность пользователя , как будто вы смотрите через его плечо, это немного сложнее. Тем более, что некоторые вещи, такие как sftp, на самом деле не делают никаких записей в bash_history. Это совершенно другая подсистема.

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

...