Ключ ssh требует пароль после просмотра
Я использую крошечный компьютер, на котором я храню свой код, прежде чем отправить его на github. Это также единственная машина с портом 22, переадресованным в домашних условиях, поэтому мне приходится делать push с этой машины из-за github, использующего ssh в качестве протокола для выполнения push и pull. Я пытался сделать push сегодня, и я получаю ошибки об отказе в разрешении (Publickey), поэтому я прочитал эту страницу, поэтому я создал файл конфигурации ssh по адресу ~tc/.ssh/config
со следующим содержанием:
Host github.com
User git
Hostname github.com
PreferredAuthentications publickey
IdentityFile /home/tc/.ssh/id_dsa.pub
И у меня все еще есть проблемы после попытки воссоздать мою пару ключей dsa.
По сути, я вижу, что после того, как я восстановил свою пару ключей dsa после запуска
ssh-keygen -t dsa
Затем я подтверждаю перезапись, нажимаю ввод три раза, чтобы использовать: расположение по умолчанию /home/tc/.ssh/id_dsa
(и id_dsa.pub в том же каталоге), и без пароля. Я, чем попытаться SSH к GitHub, чтобы проверить соединение с помощью ssh git@github.com
и получите ошибку:
Permission denied (publickey).
Поэтому я решил, что это из-за того, что я не добавил свой недавно сгенерированный открытый ключ в github. Итак, я перехватываю открытый ключ и копирую вывод в мои настройки на github, теперь каждый раз, когда я пытаюсь выполнить ssh для github, он запрашивает у меня пароль, хотя я никогда не указывал его и не просил меня перед просмотром файл. Кроме того, разрешения, кажется, хорошо для rw только для пользователя tc.
1 ответ
IdentityFile /home/tc/.ssh/id_dsa.pub
Это должно указывать на ваш закрытый ключ, а не на ваш открытый ключ. Открытый ключ находится на сервере, к которому вы подключаетесь.