Доступ к репозиторию git clone запрещен после добавления открытого ключа Bitbucket - PullRequest
1 голос
/ 30 марта 2019

Я пытаюсь получить доступ к своим репозиториям в моей учетной записи bitbucket через ssh, но, что бы я ни пытался сделать, я не могу получить доступ. У меня также есть все репозитории в моей учетной записи, так что это не означает, что у меня нет прав на чтение / запись.

Я создал новую комбинацию открытого / закрытого ключа и добавил открытый ключ в свою учетную запись (я делал это и с другими компьютерами). И я выполнил следующие команды в моей командной строке:

eval 'ssh-agent' //I've also tried eval 'ssh-agent -s'
ssh-add /path/to/private/key

Все еще отказано в доступе. Я настроил SSH-доступ ранее в Bitbucket без каких-либо проблем, используя этот же процесс, но по какой-то причине я не могу заставить это работать.

Обновление:

Я запустил ssh -v bitbucket.org и вот что получилось:

OpenSSH_7.2p2 Ubuntu-4ubuntu2.7, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /home/eric/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to bitbucket.org [18.205.93.0] port 22.
debug1: Connection established.
debug1: identity file /home/eric/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_rsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_dsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_dsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_ecdsa type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_ecdsa-cert type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_ed25519 type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/eric/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.7
debug1: Remote protocol version 2.0, remote software version conker_1.1.53-1da6f80 app-155
debug1: no match: conker_1.1.53-1da6f80 app-155
debug1: Authenticating to bitbucket.org:22 as 'eric'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: curve25519-sha256@libssh.org
debug1: kex: host key algorithm: ssh-rsa
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ssh-rsa SHA256:zzXQOXSRBEiUtuE8AikJYKwbHaxvSc0ojez9YXaGp1A
debug1: Host 'bitbucket.org' is known and matches the RSA host key.
debug1: Found key in /home/eric/.ssh/known_hosts:1
Warning: Permanently added the RSA host key for IP address '18.205.93.0' to the list of known hosts.
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /home/eric/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Offering RSA public key: eric@thanos
debug1: Authentications that can continue: publickey
debug1: Offering RSA public key: eric@thanos
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/eric/.ssh/id_dsa
debug1: Trying private key: /home/eric/.ssh/id_ecdsa
debug1: Trying private key: /home/eric/.ssh/id_ed25519
debug1: No more authentication methods to try.
Permission denied (publickey).

Похоже, он пытается найти закрытый ключ с именем id_rsa, который для компьютера, на котором я сейчас работаю, уже используется в другой учетной записи bitbucket, поэтому его нельзя использовать для этой учетной записи. Есть ли способ переопределить это соглашение об именах, чтобы я мог добавить пользовательский ключ, который не называется id_rsa?

Ответы [ 2 ]

0 голосов
/ 02 апреля 2019

Я понял, что является причиной проблемы.По умолчанию bitbucket ищет закрытый ключ с именем "id_rsa" при использовании git url по умолчанию (git@bitbucket.org:<username>/<repository>.git).Так как мой уже был привязан к другому аккаунту, он продолжал выбрасывать ошибки.Однако можно добавить дополнительные ключи к учетной записи, используя следующую информацию:

https://confluence.atlassian.com/bitbucket/set-up-additional-ssh-keys-271943168.html.

Работал для меня, и теперь у меня есть SSH-доступ к моей учетной записи.

0 голосов
/ 30 марта 2019

Сначала попробуйте сделать это с закрытым ключом без пароля: вы избежите необходимости иметь дело с ssh-agent, который для тестирования проще.

Во-вторых, убедитесь, что вы сгенерировали закрытый ключ для старого формата PEM, а не для нового OpenSSH :

ssh-keygen -m PEM -t rsa -P "" -f afile

И посмотрите, не исчезнет ли проблема.

Ваша трассировка стека также включает в себя:

Authenticating to bitbucket.org:22 as 'eric'

Убедитесь, что ваш SSH URL имеет значение git@bitbucket.org, , а не eric@bitbucket.org: здесь есть ключ для аутентификации в сеансе, но сеанс всегда открывается с учетной записью git.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...