BitBucket. Permission denied (publickey)

16th Август 2013 | Категории: Сервер | Метки: ,

Ко мне обратилась знакомая с необычной проблемой. При попытке любого обращения к 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.

Все работает.

Subscribe without commenting


  1. Masati
    3rd Ноябрь 2013 в 18:13

    Спасибо, отличная шпаргалка получилась.
    Пришлось повторять процедуру на другом сервере, выполнила пошагово. все четко и понятно.