Есть ли какое-либо программное обеспечение Linux для мониторинга входящего сеанса ssh. На предыдущей работе мне сказали, что если вам когда-нибудь понадобится поддержка со стороны Red Hat, например, вы можете подключить их по SSH к своей машине, и вы сможете наблюдать за тем, что они делают.
Я нахожусь в похожей ситуации, когда я хочу ssh на машину моего друга, чтобы помочь ему, но я хочу, чтобы он мог наблюдать за тем, что я делаю в образовательных целях, и чтобы убедиться, что я не делаю ничего злонамеренного.
Какие-либо предложения?
Спасибо
GNU Screen имеет такую возможность, вы можете разрешить конкретному пользователю оболочки работать только через screen.
https://www.linux.com/learn/tutorials/442418-using-screen-for-remote-interaction
Я думаю, что экран - это то, что вам нужно, но если вы не хотите сидеть и смотреть и хотите "видео" сеанса пользователя, вы можете посмотреть на оболочку sudo.
Если вы настроили пользователя с этим в качестве оболочки, вы можете получить полную запись всего, что произошло, и вы можете «воспроизвести» это обратно и посмотреть его, когда / если вам нужно.
Единственным возможным недостатком этого является то, что журналы могут вырасти очень большими, например, если они запускают такую команду, как find /
, у вас также будет все это записано - так что вам, вероятно, придется выбрать, для каких учетных записей включить его, а не делать это глобально.
Что касается разрешения доступа для входа в систему поставщикам, это, вероятно, идеально, потому что у вас есть полный контрольный журнал всего, что они сделали, все (даже отступы назад) записывается и сохраняется для воспроизведения.
log_output
ваш вариант записи для sudoers, и sudoreplay(8)
твой игрок.
В соответствии с sudoers
страница руководства:
log_output: если установлено, sudo будет запускать команду в псевдотерминале и регистрировать весь вывод, который отправляется на экран, аналогично команде script (1). Если стандартный вывод или стандартная ошибка не связаны с tty пользователя из-за перенаправления ввода-вывода или из-за того, что команда является частью конвейера, этот вывод также фиксируется и сохраняется в отдельных файлах журнала.
В файле sudoers вы должны поместить что-то вроде этого:
User_Alias SHELL_ACCOUNTS = root,jack
Defaults: SHELL_ACCOUNTS log_output
Или для группового ведения журнала
Defaults:%shellusers log_output
Видеть http://www.gratisoft.us/sudo/sudoers.man.html для подробностей.
Я использую whowatch на своем сервере.
apt-get install whowatch
Для аналогичной вещи: Просмотр в реальном времени команд оболочки Linux, выполняемых другим пользователем?
Вы можете использовать команду сценария. Создайте строку в .login или .profile пользователя, сеанс ssh которого вы хотите отслеживать. Когда он входит в систему, создается сценарий / журнал его ввода-вывода, который дает вам возможность запускать команды и вывод этих команд. В реальном времени вы можете просто следить за сценарием и смотреть, что делает пользователь в реальном времени.
Невозможно вставить ссылку на вашу ссылку, но вы можете просто ввести в Google команду "script", и вы получите ссылки.
Ты можешь использовать кибиц. Цитата из справочной страницы:
kibitz позволяет двум (или более) людям взаимодействовать с одной оболочкой (или любой произвольной программой).
В Fedora он включен в ожидать пакет.
экран или tmux.
совместное использование tmux немного проще.