Как мы указываем идентификатор SSH по умолчанию?

32

id_rsa обычно является ключом по умолчанию.

Я создал новый ключ с именем 'keyhello'

Обновление: я также добавил этот ключ, выполнив:

ssh-add /home/myuser/.ssh/keyhello

Но я верю, что это не мой ключ по умолчанию.

Итак, как мы можем поставить keyhello в качестве идентификатора по умолчанию вместо id_rsa?

Я вижу -t, но я пытался:

ssh-agent /home/mysuser/.ssh/keyhello -t 

Не повезло с этим. Я получаю «Отказано в доступе» (если я поставлю ssh-агент sudo ... Я получаю то же самое «Отказано в разрешении без вывода, даже подскажет мне мой пропуск sudo).

MEM
источник

Ответы:

49

В вашем файле ~ / .ssh / config поместите:

IdentityFile /home/myuser/.ssh/keyhello

который скажет исходящим ssh-соединениям использовать это как идентификатор по умолчанию

Уэс Хардакер
источник
1
Иди это. Если файл конфигурации не существует. Я должен создать это.
MEM
5

Вы можете указать альтернативный ключевой файл в командной строке с -iпараметром или вы можете изменить его навсегда с IdentityFileпомощью файла конфигурации клиента ssh.

MattBianco
источник
2

/ usr / bin / ssh-copy-id будет использовать последний созданный файл, который соответствует id _ *. pub. Чтобы изменить, какой из них используется по умолчанию, просто коснитесь его.

me@my-machine:~/.ssh$ touch id_rsa id_rsa.pub
Бенуа Бурго
источник
1

В моем файле /usr/bin/ssh-copy-idв строке 59:

most_recent_id="$(cd "$HOME" ; ls -t .ssh/id*.pub 2>/dev/null | grep -v -- '-cert.pub$' | head -n 1)"

DEFAULT_PUB_ID_FILE="${most_recent_id:+$HOME/}$most_recent_id"

Самым последним файлом будет файл по умолчанию, и вы, вероятно, можете это изменить. Обратите внимание, что ваш файл должен начинаться с «id».

Patafikss
источник
-2

если вы хотите изменить один по умолчанию , вы посылаете, изменения id_*.pubв в keyhello.pubв файле /usr/bin/ssh-copy-id. Вы найдете это в строке 60 или что-то. Строка начинается с, DEFAULT_PUB_ID_FILEи вы увидите после этого "$HOME/$(cd "$HOME" ; ls -t .ssh/id_*.pub".

ramsey322
источник
Шутки в сторону? Единственный способ, которым этот пользователь может внести изменения в конфигурацию, которые влияют на них (и только на них), - это изменить системный файл (потенциально влияющий на всех пользователей в системе)? Ваш ответ лучше, чем другие (6½ лет) ответы на этот вопрос?
Скотт