Скажем, я хочу отслеживать свои root
пользователей. У каждого из них есть уникальный закрытый ключ, и их открытые ключи хранятся в /root/.ssh/authorized_keys
.
Учитывая, что каждый пользователь входит в систему со своим уникальным ключом, как я могу узнать из сеанса BASH, какой ключ использовался для аутентификации? Я пробовал смотреть на переменные среды при входе в систему, но не вижу ничего, что коррелирует мой сеанс с моим открытым ключом.
Вы можете добавить имя пользователя к публичному ключу в ~/.ssh/authorized_keys
на сервере и экспортировать его как значение среды:
environment="REALUSER=realusername" ssh-dsa AAA...
Это установит переменную среды REALUSER, которая затем будет доступна для использования в bash. Это будет работать, только если PermitUserEnvironment
установлено значение true в sshd_config