Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I was connecting to one of my Linux servers from my MS Windows workstation using PuTTY (I generated them on MS Windows using one of the PuTTY related tools, I don't remember which parameters I have used while generating the keys). Now I'm trying to connect to the same server from my Ubuntu GNU/Linux workstation. I already have private / public key pairs in my ~/.ssh :

id_rsa
id_rsa.pub

Now in addition to those private / public key pairs that I already have, I also want to add the private / public key pairs for connecting to my Linux server. For PuTTY I had two files that let me successfully connect to my Linux server:

emrePrivate.ppk
emrePublic.pub

I have copied the above files to my ~/.ssh directory. Then I tried to connect to my server using the following command:

$ ssh -v -i /home/emre/.ssh/emrePrivate.ppk emre@yafz.org

But I see that it tries to use wrong public key. Here's the output:

OpenSSH_5.3p1 Debian-3ubuntu4, OpenSSL 0.9.8k 25 Mar 2009
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug1: Connecting to yafz.org [109.74.204.147] port 22.
debug1: Connection established.
debug1: identity file /home/emre/.ssh/emrePrivate.ppk type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.1p1 Debian-6ubuntu2
debug1: match: OpenSSH_5.1p1 Debian-6ubuntu2 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.3p1 Debian-3ubuntu4
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: Host 'yafz.org' is known and matches the RSA host key.
debug1: Found key in /home/emre/.ssh/known_hosts:3
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
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 public key: emre.sevinc@gmail.com
debug1: Authentications that can continue: publickey
debug1: Offering public key: /home/emre/.ssh/id_rsa
debug1: Authentications that can continue: publickey
debug1: Trying private key: /home/emre/.ssh/emrePrivate.ppk
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/emre/.ssh/emrePrivate.ppk': 
debug1: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Enter passphrase for key '/home/emre/.ssh/emrePrivate.ppk': 

And as you can see it does not accept my passphrase. I have also tried to copy emrePrivate.ppk over to id_rsa and then emrePublic.pub to id_rsa.pub but I still could not connect to my Linux server.

I'm worried especially about these lines:

debug1: Offering public key: emre.sevinc@gmail.com
debug1: Authentications that can continue: publickey
debug1: Offering public key: /home/emre/.ssh/id_rsa

But I could not find how I can fix this.

Any ideas?

share|improve this question

1 Answer 1

up vote 4 down vote accepted

Your public key has to be in ~/.ssh/authorized_keys on the target box. If you want more than one key in this, just copy them over to the target box and append them like this:

cat id_rsa.pub >> ~/.ssh/authorized_keys

Also, read this info about putty key compability and how to convert keys.

share|improve this answer
    
I cannot connect to my Linux server right now because it does not accept connection from my Ubuntu Linux workstation (it accepts only public key authentication), thus I cannot modify ~/.ssh/authorized_keys on the target box. I thought since I already have public and private keypairs I could use them on my Ubuntu workstation somehow to connect to the server. Is that impossible? –  Emre Sevinç Jul 24 '10 at 9:35
    
I saw that I did not need to modify the authorized_keys on the server, simply using puttygen and converting my private key worked! Thank you very much :) –  Emre Sevinç Jul 24 '10 at 9:37

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.