Назад | Перейти на главную страницу

Аудит Linux SSH при неудачном входе в систему с правами root

Предположим, есть два сервера (Сервер 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

Для чего нужен идентификатор ОС? И что это ?