Задать вопрос

Аудит действий пользователей в Linux — как?

Есть локальный сервер с Linux.

Есть пара десятков обычных пользователей этого сервера.

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

Для каждого пользователя локального сервера создана пара ключей - открытый и закрытый - с помощью ssh-keygen. Открытые ключи пользователей распространены на удаленные серверы (Linux/AIX/BSD) с помощью ssh-copy-id root@server. Т.е. пользователи могут заходить на удаленные серверы с правами root используя ключи.

Задача - логировать все действия пользователей на удаленных серверах.

На удаленных серверах мы не можем ничего делать, нет возможности зайти, т.е. все логирование надо делать на локальном сервере.

Вопрос - как? Пока красивых решений не нахожу :-(
  • Вопрос задан
  • 4063 просмотра
Подписаться 6 Оценить Комментировать
Ответ пользователя Saboteur К ответам на вопрос (4)
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
А зачем вы даете root права пользователям? Что конкретно они должны делать?

Через sudoers можно легко настроить, чтобы пользователи могли выполнять через sudo только определенные команды.
Если им нужно дать возможность ребутить какой-то сервис, пишете скрипт, ставите на него права rx и даете в sudoers выполнение только этого скрипта.
Если нужен мониторинг, то ставите мониторинг, а не даете пользователям root чтобы они вручную что-либо ковыряли.
Можете указать цель задачи на более высоком уровне абстракции, поскольку неудобство технического решения очень часто связано с неправильным подходом к решению задачи в целом.
Ответ написан