.png)
Я много раз подключался к github и знаю о генерации ключей ssh и размещении их id_rsa.pub
в настройках github. Но по какой-то причине с этой установкой я не могу подключиться. Я просто пытаюсь клонировать частный репозиторий на новый сервер, но когда я клонирую, я получаю:
Отказано в доступе (открытый ключ). фатально: Удалённый конец неожиданно завис
Если я запущу:
ssh -T [email protected]
Мне сообщили, что я успешно прошел аутентификацию.
Что еще я могу попробовать? Я запускаю это на стеке bitnami, так что, возможно, это вызывает проблемы? Вероятно, проблема в этом, я просто не уверен, что с этим делать. В каталоге .ssh/authorized_keys уже есть набор ключей. Я оставил их в покое, так как именно так я подключаюсь к putty/pagent. Я поместил новые ключи в /.ssh и оставил authorized_keys в покое. Как правильно это настроить? Мне просто удалить обе пары и начать заново? Использовать те же ключи для putty и github? Почему я все равно прохожу аутентификацию, если есть проблема?
решение1
Пробовали ли вы создать новый SSH-сертификат, т. е. пару ключей?
1. Сгенерируйте пару ключей по умолчанию:
$ ssh-keygen -t rsa -C "[email protected]"
Не используйте этот метод, если у вас уже есть сертификат SSH.
2. Сгенерируйте дополнительные пары ключей:
$ ssh-keygen -t rsa -C "[email protected]"
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
решение2
Похоже, ваш открытый ключ отсутствует или вы поместили неправильный открытый ключ в связку ключей. Проверьте, существует ли связка ключей в ~/.ssh
. Трудно сказать, не упомянув вашу ОС
В каталоге .ssh/authorized_keys уже есть набор ключей.
Я считаю, что это ключи, необходимые для подключения по SSH к серверу Linux.
Лучшим способом будет сгенерировать новый набор закрытых/открытых ключей для GitHub, добавить PK в связку ключей вашего сервера Linux и вставить открытый ключ вАккаунты Github.
решение3
Это ошибка в gnome-keyring-daemon
Ubuntu 14.04 LTS.