Допустим, я хочу отслеживать своих root
пользователей. Каждый из них имеет уникальный закрытый ключ, а их открытые ключи хранятся в /root/.ssh/authorized_keys
.
Учитывая, что каждый пользователь входит в систему со своим уникальным ключом, как я могу определить в сеансе BASH, какой ключ использовался для аутентификации? Я пытался просмотреть переменные среды, когда я вхожу в систему, но не вижу ничего, что соотносит мою сессию с моим открытым ключом.
Ответы:
Вы можете добавить имя пользователя в открытый ключ
~/.ssh/authorized_keys
на сервере и экспортировать его в качестве значения среды:Это установит переменную окружения REALUSER, которая затем будет доступна для использования в bash. Это будет работать только если
PermitUserEnvironment
установлено значение true вsshd_config
источник
~/.ssh/authorized_keys
? Я никогда не знал об этом.man ssh
расскажу больше под заголовкомAUTHORIZED_KEYS FILE FORMAT
.man sshd
чтобы найтиAUTHORIZED_KEYS FILE FORMAT
раздел.