Все, у меня есть хост Ubuntu, который принимает соединения SSH. Как я могу регистрировать все команды, которые выполняются на определенной учетной записи, которая входит в систему через SSH?
@Lexicon: AFAIK, нет уже скомпилированного пакета deb, только архив с исходным кодом. Установка приложения из источника описана здесь , например. Файл INSTALL, расположенный в исходном архиве, описывает различные параметры конфигурации, которые вы можете установить перед его компиляцией.
tohuwawohu
4
Вы можете попробовать с Snoopy. После того, как вы установите его, будут записаны все входные команды, которые вызывают execve в системный журнал. Вы найдете его в репозитории только для выносливости и точности.
auth.log содержит информацию об открытом и закрытом сеансе, но не о командах, которые были запущены при входе в систему. .Bash_history показывает только локальные команды, ничего через сеанс ssh (по крайней мере из того, что я могу сказать).
Лексикон
~ / .bash_history не будет работать, так как пользователь может изменить файл.
Пантера
.bash_history не показывает, что происходит через ssh.
Лексикон
Что .bash_historyзависит от того, как вы его настроили. Он может показать что угодно, от сочетания каждого одновременного сеанса оболочки, до вообще ничего. (Я использую export HISTFILE=''во .bashrcвсех системах отключение истории записи по соображениям безопасности, например.)
cjs
1
У меня похожая проблема, и я написал инструмент log-user-session, который сохраняет весь вывод оболочки в доступный только для root файл журнала сеанса. Его можно включить с помощью принудительной команды для sshd_conf или ~ / .ssh / авторизованных ключей (см. Документацию ).
Вы можете попробовать с Snoopy. После того, как вы установите его, будут записаны все входные команды, которые вызывают execve в системный журнал. Вы найдете его в репозитории только для выносливости и точности.
Вы можете установить его отсюда .
источник
Я не думаю, что SSHD регистрирует команды, пока пользователь входит в систему.
Вы можете проверить, кто вошел в систему, проверив
/var/log/auth.log
и перекрестная ссылка на их историю
/home/sshuser/.bash_history
история будет иметь команды локальные или удаленные.
источник
.bash_history
зависит от того, как вы его настроили. Он может показать что угодно, от сочетания каждого одновременного сеанса оболочки, до вообще ничего. (Я используюexport HISTFILE=''
во.bashrc
всех системах отключение истории записи по соображениям безопасности, например.)У меня похожая проблема, и я написал инструмент log-user-session, который сохраняет весь вывод оболочки в доступный только для root файл журнала сеанса. Его можно включить с помощью принудительной команды для sshd_conf или ~ / .ssh / авторизованных ключей (см. Документацию ).
источник