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've configured my router to accept a public key SSH session with a passphrase. They key pair was generated using the PuTTY tools on windows.

I can open the session from both Windows and Linux using the Putty tools, but I can't do so with ssh on Linux.

When prompted by ssh for the keyfile's passphrase, it fails. Ex:

~$ ssh root@my.domain.com -p 123 -i ./key-ddwrt.ppk
DD-WRT v24-sp2 micro (c) 2010 NewMedia-NET GmbH
Release: 06/09/10 (SVN revision: 14583)
Enter passphrase for key './key-ddwrt.ppk':  <*******>
Enter passphrase for key './key-ddwrt.ppk':  <*******>
Enter passphrase for key './key-ddwrt.ppk':  <*******>

But using plink works:

~$ plink -P 48884 -ssh -l root -i ./key-ddwrt.ppk my.domain.com
Using username "root".
DD-WRT v24-sp2 micro (c) 2010 NewMedia-NET GmbH
Release: 06/09/10 (SVN revision: 14583)
Passphrase for key "Hint phrase to jog my memory":  <*******>

Enter 'help' for a list of built-in commands.

root@DD-WRT:~#

Why?

share|improve this question
add comment

2 Answers

up vote 5 down vote accepted

OpenSSH and the Putty derived tools use a different format for the keys. If you open up Puttygen you will be able to export a key that is openssh compatible for authentication.

share|improve this answer
    
Thanks. That makes perfect sense. –  Jamie Sep 17 '10 at 17:53
    
putty: mega-irritating. So irritating that I always prefer using the OpenSSH in Cygwin whenever possible. –  user5336 Sep 17 '10 at 20:29
add comment

ppk is a putty-proprietary way of storing the key. You need to export it as an pem for openssh to make use of it.

share|improve this answer
add comment

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.