6

Я много раз подключался к github и знаю о генерации ключей ssh и установке id_rsa.pub в настройки github. Но по какой-то причине с этой установкой я не могу заставить его подключиться. Я просто пытаюсь клонировать частное хранилище на новый сервер, но когда я получаю клон, я получаю:

В доступе отказано (publickey). фатальный: удаленный конец неожиданно завис

Если я бегу:

ssh -T git@github.com

Это говорит мне, что я успешно прошел проверку подлинности.

Что еще я могу попробовать? Я запускаю это в стеке bitnami, так что, может быть, это вызывает проблемы? Это, вероятно, проблема, я просто не уверен, что с этим делать. В каталоге .ssh/authorized_keys уже есть набор ключей. Я оставил их в покое, так как я соединяюсь с замазкой / пагентом. Я положил новые ключи в / .ssh и оставил авторизованные ключи в покое. Каков был бы правильный способ настроить это? Должен ли я просто удалить обе пары и начать все сначала? Использовать одинаковые ключи для putty и github? Почему я все еще аутентифицируюсь, если есть проблема?

3 ответа3

7

Вы пытались создать новый сертификат SSH, т.е. пару ключей?

1 Создайте пару ключей по умолчанию:

$ ssh-keygen -t rsa -C "defaultuser@gmail.com"

Не используйте это, если у вас уже есть сертификат SSH.

2 Создайте дополнительные пары ключей:

$ ssh-keygen -t rsa -C "seconduser@gmail.com"

3 Добавьте ключи не по умолчанию

$ ssh-add ~/.ssh/id_rsa_seconduser
Enter passphrase for /Users/defaultuser/.ssh/id_rsa_seconduser: 
Identity added: /Users/defaultuser/.ssh/id_rsa_defaultuser  (/Users/defaultuser/.ssh/id_rsa_defaultuser)

4 Установите файл конфигурации SSH (~/.ssh/config), чтобы SSH знал, какой ключ будет использоваться для какого сервера:

Host github.com
  HostName github.com
  User git
  IdentityFile /Users/XXXUser/.ssh/id_rsa

Host github-client
  HostName github.com
  User git
  IdentityFile /Users/XXXUser/.ssh/id_rsa_XXXSECONDUSER

5 Убедитесь, что в файле .git/config для проекта Git, связанного со второй учетной записью пользователя на Github, вы используете правильное имя хоста github-client но не github.com:

[remote "origin"]
    fetch = +refs/heads/*:refs/remotes/origin/*
    url = git@github-client:foobarsomeuser/foobar.git
0

Похоже, ваш открытый ключ либо отсутствует, либо вы поместили неверный открытый ключ в ваш брелок. Проверьте, существует ли связка ключей в ~/.ssh . Трудно сказать, не упоминая вашу ОС


В каталоге .ssh/authorized_keys уже есть набор ключей.

Я считаю, что это ключи, необходимые для SSH на сервере Linux.

Лучшим способом было бы создать новый набор закрытых / открытых ключей для github, добавить PK в ваш брелок на сервере Linux и вставить открытый ключ в учетные записи Github.

0

Это ошибка в gnome-keyring-daemon в Ubuntu 14.04 LTS.

См .: https://stackoverflow.com/a/44753293/1156933.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .