Я случайно сделал ssh-add -d
, пытаясь удалить определенный ключ, но он удалил их все из моего ssh-агента. Нужно ли мне повторно добавлять мой ключ с authorized_keys или это произойдет автоматически при следующем входе в систему с помощью ssh -i me@wherever
?
Я боюсь выйти из системы, а затем выйти из системы.
Я попытался набрать ssh-add /home/me/.ssh/authorized_keys
, но затем он запрашивает парольную фразу, и я не знаю, о какой парольной фразе идет речь.
ssh-add
клиентская часть ssh-agent
, это не имеет никакого отношения к предоставляющему доступу к хостам (который сделан путем добавления открытого ключа (.pub
) к ~/.ssh/authorized_hosts
на стороне сервера). ssh-agent
программа, которую Вы используете на стороне клиента, для стороны сервера только нужно sshd
.
Путем вызова ssh-add -d
, Вы очистили кэшируемый ключ от ssh-agent
таким образом, что необходимо повторно ввести пароль файла ключей SSH в следующий раз Вы ssh к системе. Вы не заблокируете себя путем очистки этого кэша. Просто выполненный ssh-add
(или ssh-add ~/.ssh/id_rsa
для определенного файла ключей) для запоминания пароля файла ключей снова за эту сессию.
-i
опция ssh
только необходимо, если Ваш закрытый ключ расположен на нестандартном местоположении. ssh -i ~/.ssh/id_rsa user@host
почти эквивалентно ssh user@host
с тех пор ~/.ssh/id_rsa
одно из стандартных мест, где SSH ищет файл ключей.
Причина, почему ssh-add ~/.ssh/authorized_keys
подсказки для пароля состоят в том, потому что он не распознал незащищенный ключ и таким образом принял защищенный паролем ключ. На самом деле файл имеет недопустимый формат, таким образом, никакой пароль не будет работать здесь.
См. также страницу руководства ssh-add(1)
.
Можно или скопировать содержание .ssh/id_rsa.pub
(который является открытым ключом), и добавьте его до конца .ssh/authorized_keys
или используйте ssh-copy-id localhost
, чтобы позволить SSH сделать копирование.
Примечание, что Ваш ключ не должен быть в .ssh/authorized_keys
, если Вы не планируете SSH'ing в это использующее компьютеры тот ключ.