У меня есть настройка аутентификации на основе ключа SSH для подключения к удаленному серверу с моего Macbook Air. Изначально закрытый ключ хранился в ~ / .ssh / id_rsa, но с тех пор я переместил этот файл на безопасный внешний жесткий диск. Я также удалил файл из каталога ~ / .ssh (теоретически никто не сможет подключиться без закрытого ключа на этом внешнем жестком диске).
Однако, когда я пытаюсь подключиться к своему удаленному хосту через ssh (ssh user@12.33.539.295), он успешно подключается (без подключения внешнего файла с ключевым файлом). В командной строке указано «последний вход в систему», значит, мой Mac где-то кэширует ключевой файл?
За https://help.github.com/articles/working-with-ssh-key-passphrases/#platform-mac похоже, что Mac OSX кэширует ключ в собственной связке ключей. Это, в свою очередь, становится альтернативным источником данных для ssh-agent.
Да. Ваш ключ был загружен в ваш ssh-агент, когда вы впервые его использовали (если у него есть кодовая фраза, отобразится диалоговое окно.) Если вы выйдете из системы, агент остановится.