Bug 310281

Summary: Dolpin complains about invalid keys on sftp connections
Product: [Unmaintained] kio Reporter: Mark Greenwood <fatgerman>
Component: sftpAssignee: Andreas Schneider <asn>
Status: RESOLVED DUPLICATE    
Severity: normal CC: frank78ac
Priority: NOR    
Version: 4.9.3   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Mark Greenwood 2012-11-18 13:38:31 UTC
There are some similar bugs to this but none with quite the same problem.
I have connected to a server using ssh on the command line previously:
ssh user@server

If I now try to connect to it using dolphin
sftp://user@server/

I get an error message :
Connection to host The host key for this server was not found, but another type of key exists.
An attacker might change the default server key to confuse your client into thinking the key does not exist.
Please contact your system administrator.
 is broken

The only way to get Dolphin to connect is to delete the contents of ~/.ssh
It seems that dolphin does not like the host keys that the command line ssh creates. This means I cannot connect using both dolphin and command-line ssh.


Reproducible: Always

Steps to Reproduce:
1. ssh to the server from the command line (with an empty ~/.ssh)
2. Try sftp connection to same server, same user, from dolphin
3.
Actual Results:  
Dolphin throws error message

Expected Results:  
Dolphin should connect

This is using Kubuntu 12.04.1 with KDE 4.9.3
Comment 1 Frank Reininghaus 2012-11-18 15:19:26 UTC
Thanks for the bug report! Dolphin does not do any sftp-related stuff itself, we use a kioslave for that -> reassigning.
Comment 2 Mark Greenwood 2012-11-18 20:03:28 UTC
OK no problem :)

Interestingly, if I do things the other way around, ie:

Clear ~/.ssh
Connect to the server from dolphin (sftp://user@server/)
Then connect from the command line (ssh user@server)

Then I don't get any errors.

It might be relevant that 'server' has a static IP on my local network which is mapped in /etc/hosts (because my router's DHCP sucks :) )
Comment 3 Andreas Schneider 2012-11-19 09:37:48 UTC
If you establish a ssh connection with openssh you probably get a ECDSA key and the fingerprint is stored in ~/.ssh/known_hosts. libssh doesn't know about ECDSA keys yet. It will be supprted with libssh 0.6.
Comment 4 Andreas Schneider 2012-11-19 09:38:19 UTC

*** This bug has been marked as a duplicate of bug 270322 ***