Вы желаете узнать это после чего-то, что уже произошло (судебная экспертиза), или Вы желаете сделать ее так, чтобы можно было зарегистрироваться, кто делает что?
Для судебной экспертизы: В моей системе Fedora, /var/log/secure
содержит записи каждой аутентификации с открытым ключом и имени пользователя, но не говорит, какой ключ использовался. Вам, вероятно, не повезло здесь
Для будущего auditability: можно использовать authorized_keys
файл для установки команд, каждый вход в систему ограничивается и затем запускает программу, которая регистрирует аутентификацию (и возможно последующие команды, с помощью чего-то как sudoscript):
Если фраза опций в начале строки содержит команду ключевого слова = "строка", то любое соединение SSH, которое аутентифицирует использование, что конкретный ключ только выполнит указанную команду, даже если командная строка это было дано, указало другую команду.
Это должно быть сказано, хотя, вероятно, имеет больше смысла создавать несколько учетных записей и затем настраивать область совместного доступа...
... использование общей учетной записи...
Спасибо за предоставление нам идеальный пример для указания на при объяснении, почему это - плохая идея.;-)
Серьезно, хотя, хотите Вас, хотят, не может быть сделан afaik. И если "ключами комментируют, что" Вы имеете в виду комментарий, который находится в id_rsa файле после ключа, это - остановка также. Это - комментарий, это не отправляется на сервер с другой стороны.
В самом деле. Создайте несколько учетных записей.
Для проверки и если ваши люди используют ssh-agent, вы можете поместить это в свой .bashrc:
SSH_KEY_NAME=$(ssh-add -L | cut -d' ' -f 3 || 'unknown')
if [[ ! $SSH_KEY_NAME ]]; then SSH_KEY_NAME="no agent"; fi
echo `/bin/date` $SSH_KEY_NAME >> ~/.login.log
getent
иcut
решит это для Вас. – womble♦ 18 December 2009 в 00:40getent passwd $USER | cut -d: -f 7
– David Fraser 18 December 2009 в 13:20