Предположим, есть два сервера (Сервер A и Сервер B). Я вижу, что root ssh не удалось войти в систему с сервера A на сервер B. ssh для входа в систему root был отключен для обоих серверов.
Я хотел бы узнать всю историю команд на сервере A, т.е. найти всех пользователей, которые запускали ssh на сервере A.
Или
Добавьте аудит на сервере B таким образом, чтобы в сообщении журнала отображался идентификатор ОС с сервера A, который пытался выполнить ssh с root от A.
Пример: User1 присутствует на сервере A и пытается подключиться к серверу b по ssh с правами root с неудачными попытками входа в систему. Журнал сервера B должен отображать ssh для root, который не удалось, и он был получен с сервера A пользователем user1.
Примечание. Никто не может войти на сервер A, кроме администратора. На сервере A также нет записей crontabs. Я подозреваю, что пакет поставщика, установленный на сервере A, может выполнять ssh через root на сервер B, поскольку оба являются частью кластера.
Если вы предварительно не настроили аудит с помощью auditd (чтобы регистрировать вызовы либо в частности ssh-клиент или все исполняемые файлы / команды) у вас вряд ли уже будет какой-либо подробный журнал со всеми прошлыми событиями на этом конкретном сервере.
Ваши администраторы могли ошибочно совершить sudo ssh server-B
а затем это действие должно быть зарегистрировано (в зависимости от вашего дистрибутива) в /var/log/[authlog | secure]
.
Вы можете проверить ~/.bash_history
файлы ваших пользователей, но они будут иметь только запись действий пользователя в интерактивных сеансах входа в систему и не будут записывать ничего, когда пользователь переопределяет сбор истории команд или когда сеансы ssh были, например, инициированы сценарием.
Я хотел бы узнать всю историю команд на сервере A, т.е. найти всех пользователей, которые запускали ssh на сервере A
Как сказал об этом Жиль тема, ты можешь использовать :
getent passwd | cut -d : -f 6 | sed 's:$:/.bash_history:' | xargs -d '\n' grep -s -H -e "ssh"
Добавьте аудит на сервере B таким образом, чтобы в сообщении журнала отображался идентификатор ОС с сервера A, который пытался выполнить ssh с root из A
Для чего нужен идентификатор ОС? И что это ?