Регистрация всех команд SSH через прокси-сервер

Регистрация всех команд SSH через прокси-сервер

Проблема: У меня есть рабочий сервер, который я никому не доверяю. Однако я не могу быть единственным, кто может получить к нему доступ.

Реализация: Мне нужно разрешить людям входить в систему как root, но через прокси-сервер, чтобы все, что они вводят/отправляют по ssh, регистрировалось на прокси-машине, к которой у них фактически нет доступа (чтобы они не могли подделать журналы).

Какая идеальная настройка для этого? Я сталкивался только с tshark (SSH-регистрация всех команд), но я не уверен, что это подойдет для работы, и не знаю, как именно это настроить, поскольку люди говорят, что оно регистрирует трафик на уровне протокола, а шифрование SSH происходит на уровне приложения.

Может ли кто-нибудь предоставить окончательное проверенное решение этой проблемы?

решение1

Естьhttps://goteleport.comкоторый должен делать именно то, что вы просите. Они говорят, что он готов к производству, но я играю с ним, и мне кажется, что он находится на ранней стадии разработки.

Я ищу альтернативы, поэтому нашел ваш вопрос, который все еще актуален. Я бы выбрал коммерческое решение.

решение2

Вы можете попробовать NHI:https://github.com/strang1ato/nhi

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

nhiведет учет:

  • команда
  • вывод команды
  • статус выхода команды
  • рабочий каталог в конце выполнения команды
  • время начала команды
  • время окончания команды
  • приглашение оболочки во время выполнения команды

nhiтакже ведет учет информации о сеансе оболочки в целом.

[...]

nhi daemon основан на eBPF - технологии, встроенной в ядро ​​linux. Использование eBPFгарантирует отличную производительность и низкие накладные расходы инструмента, поскольку трассировка безопасно выполняется внутри ядра.

nhiне влияет на поведение какой-либо программы/процесса (и ОС в целом).

Связанный контент