Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failure authenticating with password protected ed25519 private key #10130

Closed
cyberduck opened this issue Nov 8, 2017 · 26 comments
Closed

Failure authenticating with password protected ed25519 private key #10130

cyberduck opened this issue Nov 8, 2017 · 26 comments
Assignees
Labels
bug fixed sftp SFTP Protocol Implementation
Milestone

Comments

@cyberduck
Copy link
Collaborator

kinglok created the issue

Cyberduck can log myself through SFTP protocol with using ed25519 private key. However, if a ed25519 key is password-protected, Cyberduck cannot login the same server but showing the following error message:

Exhausted available authentication methods. Please contact your web hosting service provider for assistance.


Attachments

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Please update to the latest snapshot build available which should resolve this issue.

@cyberduck
Copy link
Collaborator Author

kinglok commented

I am sorry to tell the problem still exist in version 6.3.0 (26995)

@cyberduck
Copy link
Collaborator Author

63c2648 commented

Hi, Are you planning to apply this to the stable version (Mac App Store version)? Thanks.

@cyberduck
Copy link
Collaborator Author

@dkocher commented

In 4de7b08.

@cyberduck
Copy link
Collaborator Author

63c2648 commented

Hi,
Updated the App (via App Store) and unfortunately, it still not working. Getting the following error: "Exhausted available authentication methods. Unknown key type ssh-ed25519. Please contact your web hosting service provider for assistance."
However, it seems working fine with the nightly builds.
Thanks.

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Are you running version 6.6.2 (28219) from the Mac App Store?

@cyberduck
Copy link
Collaborator Author

63c2648 commented

Replying to [comment:8 dkocher]:

Are you running version 6.6.2 (28219) from the Mac App Store?
Correct

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Replying to [comment:9 UniverseX]:

Replying to [comment:8 dkocher]:

Are you running version 6.6.2 (28219) from the Mac App Store?
Correct
I am unable to reproduce with a key generated using ssh-keygen -t ed25519 running 6.6.2 (28219).

@cyberduck
Copy link
Collaborator Author

63c2648 commented

Replying to [comment:10 dkocher]:

Replying to [comment:9 UniverseX]:

Replying to [comment:8 dkocher]:

Are you running version 6.6.2 (28219) from the Mac App Store?
Correct
I am unable to reproduce with a key generated using ssh-keygen -t ed25519 running 6.6.2 (28219).
I’ve generated it in Putty (Windows).

@cyberduck
Copy link
Collaborator Author

63c2648 commented

Replying to [comment:13 dkocher]:
Then how you explain that it works fine in nightly built?
The key is working fine in other Windows/macOS applications (e.g. Yummy FTP Pro, Putty etc.)

@cyberduck
Copy link
Collaborator Author

63c2648 commented

I have recreated a key via macOS terminal and can confirm that it’s working now. It seems that there is an issue with Putty keys. Thanks.

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Can you please try re-selecting the PuTTY private key in the bookmark settings and try to connect again.

@cyberduck
Copy link
Collaborator Author

63c2648 commented

Replying to [comment:18 dkocher]:

Can you please try re-selecting the PuTTY private key in the bookmark settings and try to connect again.
I've tried all possible scenarios - reinstalling the app, re-creating bookmarks, re-choosing the key, however, unfortunately, it's still not working. Gonna stick to the newly created key (via ssh-keygen), was able to convert the new key to the Putty format using puttygen nightly build.
Thanks.

@cyberduck
Copy link
Collaborator Author

kinglok commented

Hi,

I use the following the command to create the private/public key pair for logging my Debian server.

ssh-keygen -t ed25519 -f ssh_host_ed25519_key

While using the latest snapshot of Cyberduck and come across with “Application error”.

please advise how I can help by fixing it up.

Thanks,

Kinglok, Fong

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Can you please attach the screenshot of the failure message and any related output in the system.log(/Applications/Utilities/Console.app).

@cyberduck
Copy link
Collaborator Author

kinglok commented

I am using the latest snapshot of Cyberduck.

The screen shows "Unknown application error" and I have attached the log file.

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Jul 21 21:03:29 Moon Cyberduck[2531]: [background-8] WARN  ch.cyberduck.core.threading.BackgroundCallable - Failure running background task Unknown
264	       
265	        java.lang.Exception
266	                at ch.cyberduck.core.threading.BackgroundCallable.<init>(BackgroundCallable.java:38)
267	                at ch.cyberduck.core.threading.DefaultBackgroundExecutor.execute(DefaultBackgroundExecutor.java:66)
268	                at ch.cyberduck.core.AbstractController.background(AbstractController.java:78)
269	                at ch.cyberduck.ui.cocoa.controller.BrowserController$27.run(BrowserController.java:3052)
270	                at ch.cyberduck.ui.cocoa.controller.BrowserController$30.run(BrowserController.java:3172)
271	                at ch.cyberduck.ui.cocoa.controller.BrowserController.disconnect(BrowserController.java:3196)
272	                at ch.cyberduck.ui.cocoa.controller.BrowserController.doUnmount(BrowserController.java:3159)
273	                at ch.cyberduck.ui.cocoa.controller.BrowserController.unmount(BrowserController.java:3150)
274	                at ch.cyberduck.ui.cocoa.controller.BrowserController.unmount(BrowserController.java:3105)
275	                at ch.cyberduck.ui.cocoa.controller.BrowserController.mount(BrowserController.java:3047)
276	                at ch.cyberduck.ui.cocoa.controller.BrowserController.connectBookmarkButtonClicked(BrowserController.java:1801)
277	                at ch.cyberduck.ui.cocoa.controller.BrowserController$11.tableRowDoubleClicked(BrowserController.java:1534)
278	                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
279	                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
280	                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
281	                at java.lang.reflect.Method.invoke(Method.java:498)
282	                at org.rococoa.internal.OCInvocationCallbacks.callMethod(OCInvocationCallbacks.java:171)
283	                at org.rococoa.internal.OCInvocationCallbacks.access$200(OCInvocationCallbacks.java:53)
284	                at org.rococoa.internal.OCInvocationCallbacks$2.callback(OCInvocationCallbacks.java:83)
285	                at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
286	                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
287	                at java.lang.reflect.Method.invoke(Method.java:498)
288	                at com.sun.jna.CallbackReference$DefaultCallbackProxy.invokeCallback(CallbackReference.java:485)
289	                at com.sun.jna.CallbackReference$DefaultCallbackProxy.callback(CallbackReference.java:515)
290	                at com.sun.jna.Native.invokeVoid(Native Method)
291	                at com.sun.jna.Function.invoke(Function.java:374)
292	                at com.sun.jna.Function.invoke(Function.java:323)
293	                at com.sun.jna.Function.invoke(Function.java:275)
294	                at org.rococoa.internal.MsgSendHandler.invoke(MsgSendHandler.java:111)
295	                at com.sun.jna.Library$Handler.invoke(Library.java:234)
296	                at com.sun.proxy.$Proxy0.syntheticSendMessage(Unknown Source)
297	                at org.rococoa.Foundation.send(Foundation.java:209)
298	                at org.rococoa.Foundation.send(Foundation.java:195)
299	                at org.rococoa.internal.ObjCObjectInvocationHandler.sendOnThisOrMainThread(ObjCObjectInvocationHandler.java:270)
300	                at org.rococoa.internal.ObjCObjectInvocationHandler.invokeCocoa(ObjCObjectInvocationHandler.java:233)
301	                at org.rococoa.internal.ObjCObjectInvocationHandler.intercept(ObjCObjectInvocationHandler.java:192)
302	                at ch.cyberduck.binding.application.NSApplication$$ByRococoa.run(<generated>)
303	                at ch.cyberduck.ui.cocoa.MainApplication.main(MainApplication.java:116)
304	        Caused by: java.lang.NullPointerException
305	                at ch.cyberduck.core.sftp.SFTPExceptionMappingService.map(SFTPExceptionMappingService.java:54)
306	                at ch.cyberduck.core.sftp.SFTPExceptionMappingService.map(SFTPExceptionMappingService.java:45)
307	                at ch.cyberduck.core.AbstractExceptionMappingService.map(AbstractExceptionMappingService.java:42)
308	                at ch.cyberduck.core.sftp.SFTPSession.login(SFTPSession.java:268)
309	                at ch.cyberduck.core.KeychainLoginService.authenticate(KeychainLoginService.java:134)
310	                at ch.cyberduck.core.LoginConnectionService.authenticate(LoginConnectionService.java:165)
311	                at ch.cyberduck.core.LoginConnectionService.connect(LoginConnectionService.java:155)
312	                at ch.cyberduck.core.LoginConnectionService.check(LoginConnectionService.java:102)
313	                at ch.cyberduck.core.pool.StatelessSessionPool.borrow(StatelessSessionPool.java:59)
314	                at ch.cyberduck.core.threading.SessionBackgroundAction.run(SessionBackgroundAction.java:119)
315	                at ch.cyberduck.core.threading.SessionBackgroundAction$1.call(SessionBackgroundAction.java:104)
316	                at ch.cyberduck.core.threading.DefaultRetryCallable.call(DefaultRetryCallable.java:48)
317	                at ch.cyberduck.core.threading.SessionBackgroundAction.call(SessionBackgroundAction.java:106)
318	                at ch.cyberduck.core.threading.BackgroundCallable.run(BackgroundCallable.java:102)
319	                at ch.cyberduck.core.threading.BackgroundCallable.call(BackgroundCallable.java:61)
320	                at java.util.concurrent.FutureTask.run(FutureTask.java:266)
321	                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
322	                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
323	                at ch.cyberduck.core.threading.NamedThreadFactory$1.run(NamedThreadFactory.java:58)
324	                at java.lang.Thread.run(Thread.java:748)

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Replying to [comment:23 kinglok]:

I am using the latest snapshot of Cyberduck.

The screen shows "Unknown application error" and I have attached the log file.
The error log suggests that the server is dropping the connection while trying to authenticate. Please check the server log for possible reasons.

@cyberduck
Copy link
Collaborator Author

@dkocher commented

Fix for null pointer on disconnect in be93cb2.

@cyberduck
Copy link
Collaborator Author

kinglok commented

Things are getting better but this time produce another type of error:
Connection failed
Login failed. The connection attempt was rejected. The server may be down, or your network may not be properly configured.

I have attached the server-side log for your comment.

@cyberduck
Copy link
Collaborator Author

kinglok commented

Any news?

@cyberduck
Copy link
Collaborator Author

240db7d commented

Also getting this same issue on Windows 8.1... Anything we can do to fix this?

@cyberduck
Copy link
Collaborator Author

83c6102 commented

I had the same issue in Windows using a .ppk PuTTY key, but I was able work around it by opening it up in PuTTYgen, then choosing Conversions > Export OpenSSH key (force new file format) from the menu, saving it with a .pem extension, then using that in Cyberduck.

@cyberduck
Copy link
Collaborator Author

6b44c9e commented

this is not fixed, i just got it again with cyberduck 7.4.1 on windows 10, with a ed25519 key generated by putty. If i use the putty private key as the 'ssh private key', it doesn't work with the "login failed: exhausted available authentication methods, unknown key type ssh-ed25519"

attached is the openssh debug3 logs

@cyberduck
Copy link
Collaborator Author

@AliveDevil commented

Did you check the wiki page? https://trac.cyberduck.io/wiki/help/en/howto/sftp#PuTTYKeyFormatInteroperability
There is no support for ed25519 keys in PuTTy format. Please use OpenSSH keys.

@cyberduck
Copy link
Collaborator Author

6b44c9e commented

is there a ticket for having cyberduck support putty keys with ed25519 keys? or for having a prompt saying "please use openssh ed25519 keys"? that article did not show up on google when searching for the error message cyberduck shows when using a putty ed25519 key if for some reason it is impossible for cyberduck to support it?

@iterate-ch iterate-ch locked as resolved and limited conversation to collaborators Nov 26, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug fixed sftp SFTP Protocol Implementation
Projects
None yet
Development

No branches or pull requests

2 participants