Я ищу способ, которым я могу записывать и проверять сеансы SSH для пользователей на моем сервер. Мне нужно знать, когда пользователь выполнил команду, какую команду он выполнил, а также иметь возможность следить за ними через вход в другие учетные записи (если пользователь запускает sudo -Hiu otheruser
, Сеанс otheruser
по-прежнему должен отслеживаться из журналов основного пользователя, поскольку они не вошли в систему напрямую).
сценарий
не кажется решением, поскольку журналы записываются из учетной записи пользователя, что делает его уязвимым для взлома / уничтожения, а также не имеет временных меток для команд.
Существует ли обычно используемый набор инструментов / программ с открытым исходным кодом для такого случая использования?
Этот вопрос, кажется, задавали и на него уже много раз отвечали: Stack Exchange спешит на помощь
Второй ответ, в частности, кажется, предлагает потенциальное решение с использованием функциональности, встроенной в сам SSHd, как описано здесь SSH-запись , но не выдержит никаких решительных усилий по победить его.
Этот метод в сочетании с командой logger может удовлетворить ваши требования.
RHEL 8 имеет интегрированную запись сеанса с пакетом tlog
. Для других дистрибутивов вы, вероятно, можете установить его самостоятельно.