Ключ 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

Это должно указывать на ваш закрытый ключ, а не на ваш открытый ключ. Открытый ключ находится на сервере, к которому вы подключаетесь.

Другие вопросы по тегам