BitBucket. Permission denied (publickey)
Ко мне обратилась знакомая с необычной проблемой. При попытке любого обращения к git-репозиторию (BitBucket) появлялось сообщение:
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Вначале я заново сгенерировал ключ:
$ ssh-keygen -t rsa -C "some@email.com" |
И добавил содержимое открытого ключа
$ cat .ssh/id_rsa.pub |
на BitBucket (Управление аккаунтом -> SSH-ключи -> Добавить ключ)
Проверил соединение:
$ ssh -T git@bitbucket.org |
Permission denied (publickey).
Гугл в большинстве случаев советовал воспользоваться командой ssh-add
$ ssh-add -l |
Could not open a connection to your authentication agent.
Запустить службу не предоставлялось возможным – права на shared-хостинге были урезаны.
Уже обессилев и почти смирившись с поражением, решил проверить логи.
$ ssh -Tv git@bitbucket.org |
OpenSSH_5.8p1-hpn13v10, OpenSSL 1.0.0j 10 May 2012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to bitbucket.org [131.103.20.167] port 22.
debug1: Connection established.
debug1: identity file /root/.ssh/identity type -1
debug1: identity file /root/.ssh/identity-cert type -1
.......
.......
debug1: Trying private key: /root/.ssh/identity
debug1: No more authentication methods to try.
Permission denied (publickey).
Как видно, ключи, которые доступны, не подходят. А тот ключ, который мы сгенерировали с помощью ssh-keygen
– отсутствует.
Это легко исправить, даже с урезанными правами. Создадим файл с настройками ssh
, в котором и пропишем путь к нашему ключу.
$ cd .ssh $ touch config $ nano config |
Host bitbucket.org
IdentityFile ~/.ssh/id_rsa
Проверим еще раз соединение с BitBucket:
$ ssh -Tv git@bitbucket.org |
OpenSSH_5.8p1-hpn13v10, OpenSSL 1.0.0j 10 May 2012 debug1: Reading configuration data /home/m/masati/.ssh/config debug1: Applying options for bitbucket.org debug1: Reading configuration data /etc/ssh/ssh_config debug1: Connecting to bitbucket.org [131.103.20.168] port 22. debug1: Connection established. debug1: identity file /home/m/masati/.ssh/id_rsa type 1 debug1: identity file /home/m/masati/.ssh/id_rsa-cert type -1 debug1: identity file /root/.ssh/identity type -1 debug1: identity file /root/.ssh/identity-cert type -1 ....... ....... debug1: Authentications that can continue: publickey debug1: Next authentication method: publickey debug1: Offering RSA public key: /home/m/masati/.ssh/id_rsa ....... ....... debug1: Server accepts key: pkalg ssh-rsa blen 279 debug1: Authentication succeeded (publickey). Authenticated to bitbucket.org ([131.103.20.168]:22). debug1: Entering interactive session. logged in as Masati. |
Все работает.
Спасибо, отличная шпаргалка получилась.
Пришлось повторять процедуру на другом сервере, выполнила пошагово. все четко и понятно.