Недавно я установил Kubuntu 16.04.2 на свой компьютер. С тех пор я больше не могу использовать свои ssh-ключи для доступа к репозиториям bitbucket и github. В старой системе (Ubuntu 14.04) появилось всплывающее окно с заголовком «Разблокировать закрытый ключ» для первого использования ключа (с запросом кодовой фразы), и я был настроен на оставшуюся часть сеанса.
Начиная с обновления, я получаю следующую ошибку:
$ git pull
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
Это связано с тем, что ключ еще не добавлен в ssh-agent (пока). Я могу сделать это вручную, используя:
$ ssh-add ~/.ssh/my_key
Enter passphrase for .ssh/my_key:
, который является обходным путем.
Хотя вышеупомянутое обходное решение может сделать трюк, и есть варианты для автоматизируйте его (см. ссылку ниже), я бы предпочел, чтобы старые функции возвращались туда, где я автоматически запрашивал свою кодовую фразу при первом использовании.
Что я мог бы (моя система) отсутствовать для этого?
Как уже сказано, добавьте
IdentityFile ~/.ssh/my_key
AddKeysToAgent yes
к вашему ~/.ssh/config, чтобы добиться аналогичного поведения.
Если я добавлю (AddKeysToAgent yes) в свою локальную конфигурацию ssh (~/.ssh/config), клавиши также сохраняются. Однако запрос находится в терминале, что само по себе неплохо, но я хотел бы понять, как получить всплывающее окно назад.Всплывающее окно старшего Ubuntu исходило из gnome-keyring, где вы сохранили свой ключ. Это, очевидно, не в версии KDE Ubuntu.
Нет простого способа получить одно и то же приглашение от чистого OpenSSH. Но вы можете попробовать экспериментировать с KWallet, который может иметь аналогичную функциональность.
Имена файлов по умолчанию для файлов с идентификаторами по умолчанию:
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
Добавить свой собственный файл в /etc/ssh/ssh_config или переименовать, он должен сделать трюк.
Как уже сказано, добавьте
IdentityFile ~/.ssh/my_key
AddKeysToAgent yes
к вашему ~/.ssh/config, чтобы добиться аналогичного поведения.
Если я добавлю (AddKeysToAgent yes) в свою локальную конфигурацию ssh (~/.ssh/config), клавиши также сохраняются. Однако запрос находится в терминале, что само по себе неплохо, но я хотел бы понять, как получить всплывающее окно назад.Всплывающее окно старшего Ubuntu исходило из gnome-keyring, где вы сохранили свой ключ. Это, очевидно, не в версии KDE Ubuntu.
Нет простого способа получить одно и то же приглашение от чистого OpenSSH. Но вы можете попробовать экспериментировать с KWallet, который может иметь аналогичную функциональность.
Имена файлов по умолчанию для файлов с идентификаторами по умолчанию:
# IdentityFile ~/.ssh/identity
# IdentityFile ~/.ssh/id_rsa
# IdentityFile ~/.ssh/id_dsa
# IdentityFile ~/.ssh/id_ecdsa
# IdentityFile ~/.ssh/id_ed25519
Добавить свой собственный файл в /etc/ssh/ssh_config или переименовать, он должен сделать трюк.