3

I have tried to specify the key to be used but for some reason ssh still uses a different key as see below

$ cat ~/.ssh/config                                        
Host BitBucket
  HostName bitbucket.org
  IdentityFile ~/.ssh/id_rsa


$ ssh -v [email protected]                                 
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /Users/gaurish/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to bitbucket.org [131.103.20.167] port 22.
debug1: Connection established.
debug1: identity file /Users/gaurish/.ssh/id_rsa type 1
debug1: identity file /Users/gaurish/.ssh/id_rsa-cert type -1
debug1: identity file /Users/gaurish/.ssh/id_dsa type -1
debug1: identity file /Users/gaurish/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.3
debug1: match: OpenSSH_5.3 pat OpenSSH_5*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40
debug1: Host 'bitbucket.org' is known and matches the RSA host key.
debug1: Found key in /Users/gaurish/.ssh/known_hosts:2
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/gaurish/.ssh/wowza.key
debug1: Remote: Forced command: conq deploykey:129587
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Server accepts key: pkalg ssh-rsa blen 279
debug1: Remote: Forced command: conq deploykey:129587
debug1: Remote: Port forwarding disabled.
debug1: Remote: X11 forwarding disabled.
debug1: Remote: Agent forwarding disabled.
debug1: Remote: Pty allocation disabled.
debug1: Authentication succeeded (publickey).
Authenticated to bitbucket.org ([131.103.20.167]:22).
debug1: channel 0: new [client-session]
debug1: Requesting [email protected]
debug1: Entering interactive session.
debug1: Sending environment.
debug1: Sending env LC_CTYPE =
PTY allocation request failed on channel 0
authenticated via a deploy key.

You can use git or hg to connect to Bitbucket. Shell access is disabled.
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype [email protected] reply 0
debug1: channel 0: free: client-session, nchannels 1
Connection to bitbucket.org closed.
Transferred: sent 3392, received 2904 bytes, in 0.8 seconds
Bytes per second: sent 4162.6, received 3563.7
debug1: Exit status 0

How I get ssh to use id_rsa for bitbucket?

4 Answers 4

3

Add IdentitiesOnly yes to the appropriate .ssh/config section to make ssh only offer the specified identity. Also, as zhenech mentioned above, you have to use ssh BitBucket for the options in the Host BitBucket section to take effect, or add bitbucket.org to the Host line. For example:

Host BitBucket bitbucket.org
  HostName bitbucket.org
  IdentityFile ~/.ssh/id_rsa
  IdentitiesOnly Yes
1

When you write Host BitBucket, you also have to ssh BitBucket, not the real hostname (but you could put that into the Host line...)

2
  • Tried that too but didn't work. SSH still doesn't offer id_rsa key for auth Mar 10, 2014 at 22:12
  • @GaurishSharma can you post a log of that try?
    – zhenech
    Mar 11, 2014 at 9:27
0

Update

I think the issue you get is because you were using other key previously. Please remove ~/.ssh/known_hosts file:

rm ~/.ssh/known_hosts

Anyway:

debug1: Authentication succeeded (publickey).

It is working correctly and the same key that is specified is being used. The connection is closed due to a reason specified in the log: you cannot use the key to connect through SSH directly, you are only permitted to use it via Git only.

Is there something else you are trying to accomplish since it is not very clear otherwise?

3
  • No. Offering RSA public key: /Users/gaurish/.ssh/wowza.key it should read Offering RSA public key: /Users/gaurish/.ssh/id_rsa Mar 10, 2014 at 22:11
  • @Gaurish note that, several lines below that, server responded with "Authentication succeeded", which means the key is accepted.
    – pepoluan
    Mar 11, 2014 at 1:08
  • please check my updated answer. I think you need to delete ~/.ssh/known_hosts
    – ek9
    Mar 11, 2014 at 13:02
0

SSH isn't offering a different key.

It is trying the key you have specified in your config file, and after that fails to authenticate, it tries whatever other keys it can find in your .ssh directory.

When it tries wowza.key, authentication is established.

However, for some reason, you are trying to open a shell to bitbucket.org, which isn't allowed, which bitbucket is telling you.

You can use git or hg to connect to Bitbucket. Shell access is disabled.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .