apache / mina-sshd

Apache MINA sshd is a comprehensive Java library for client- and server-side SSH.
https://mina.apache.org/sshd-project/
Apache License 2.0
882 stars 358 forks source link

SFTP 2.0 Client does not connect with SFTP2.0 server using public key authentication #608

Open kartikey13kaushiq opened 3 days ago

kartikey13kaushiq commented 3 days ago

Version

2.9.2

Bug description

While establishing session from SFTP 2.0 Client with SFTP2.0 server. We are using Public Key authentication for the connection and getting following error in stack trace

org.apache.sshd.common.SshException: No more authentication methods available

Need some help in resolving this

Actual behavior

[2024-09-17 10:32:38.209] DEBUG ApacheSession.beginSession(BSR,R,PT) runnable entering. For WFID: 4367 [2024-09-17 10:32:38.209] DEBUG ApacheSession.beginSession(BSR,R,PT) preferredAuth:null [2024-09-17 10:32:38.209] ALL ApacheSession.verifyHostKey(WID,KHL) entered. For WFID: 4367 [2024-09-17 10:32:38.213] DEBUG ApacheSession.verifyHostKey(WID,KHL) getting the known host key information for known host key id : 359359179a907df49node1 For WFID: 4367 [2024-09-17 10:32:38.214] DEBUG ApacheSession.verifyHostKey(WID,KHL) setting key type RSA For WFID: 4367 [2024-09-17 10:32:38.214] DEBUG ApacheSession.verifyHostKey(WID,KHL) setting the public key information for known host key id : 359359179a907df49node1 For WFID: 4367 [2024-09-17 10:32:38.214] ALL ApacheSession.verifyHostKey(WID,KHL) exited. For WFID: 4367 [2024-09-17 10:32:38.214] DEBUG ApacheSession.beginSession(BSR,R,PT) making ssh connection with user Swarna_SFTPFor WFID: 4367 [2024-09-17 10:32:38.214] DEBUG ApacheSession.beginSession(BSR,R,PT) SSH Socket Timeout Value 30000For WFID: 4367 [2024-09-17 10:32:38.214] DEBUG 000000000000 ApacheSession.authenticateToServer(preferredAuth, request). preferred Auth : null
[2024-09-17 10:32:38.214] DEBUG 000000000000 ApacheSession.authenticateToServer(preferredAuth, request). No preferred authentication present hence setting to: password
[2024-09-17 10:32:38.214] DEBUG ApacheSession Checking for password... [2024-09-17 10:32:38.215] DEBUG preferredCipher null [2024-09-17 10:32:38.215] DEBUG client cipher addClientCiphers [2024-09-17 10:32:38.215] DEBUG client cipher supportCBCCiphers true [2024-09-17 10:32:38.215] DEBUG Client cipher list [aes128-cbc, 3des-cbc, blowfish-cbc, arcfour128, arcfour256, aes192-cbc, aes256-cbc, aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, aes256-gcm@openssh.com] [2024-09-17 10:32:38.215] DEBUG preferredMac hmac-sha2-512 [2024-09-17 10:32:38.215] DEBUG client cipher addClientMacs [2024-09-17 10:32:38.215] DEBUG client mac list [hmac-sha2-512, hmac-md5, hmac-sha1-96, hmac-md5-96, hmac-sha2-256-etm@openssh.com, hmac-sha2-512-etm@openssh.com, hmac-sha1-etm@openssh.com, hmac-sha2-256, hmac-sha1] [2024-09-17 10:32:38.216] DEBUG getUserAuthFactories [UserAuthPasswordFactory[password]] authMethods:password [2024-09-17 10:32:38.22] DEBUG After establishing session ClientSessionImpl[Swarna_SFTP@/127.0.0.1:31206] [2024-09-17 10:32:38.297] ERROR 000000000000 ApacheSession.verifyAuth(request, authMethod, factory).Authentication verification failed due to: No more authentication methods available
[2024-09-17 10:32:38.297] ERROR [1726549358297] No more authentication methods available [2024-09-17 10:32:38.298] ERRORDTL [1726549358297]org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:127)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.verifyAuth(ApacheSession.java:800)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.authenticateToServer(ApacheSession.java:617)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.access$500(ApacheSession.java:122)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession$1.run(ApacheSession.java:443)   at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)   at java.lang.Thread.run(Thread.java:825) Caused by: org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:379)   at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:315)   at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:252)   at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109)   at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:591)   at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:522)   at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68)   at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:521)   at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1639)   at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:482)   at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)   at org.apache.sshd.mina.MinaService.messageReceived(MinaService.java:156)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:997)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1114)   at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:121)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:634)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1242)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1231)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)   at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)   ... 1 more [2024-09-17 10:32:38.298] ERROR 000000000000 ApacheSession.authenticateToServer(preferredAuth, request).Authenticating via password failed with error: No more authentication methods available
[2024-09-17 10:32:38.298] DEBUG 000000000000 ApacheSession.authenticateToServer(preferredAuth, request). Password authentication failed, now checking with public key...
[2024-09-17 10:32:38.298] DEBUG preferredCipher null [2024-09-17 10:32:38.298] DEBUG client cipher addClientCiphers [2024-09-17 10:32:38.298] DEBUG client cipher supportCBCCiphers true [2024-09-17 10:32:38.298] DEBUG Client cipher list [aes128-cbc, 3des-cbc, blowfish-cbc, arcfour128, arcfour256, aes192-cbc, aes256-cbc, aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, aes256-gcm@openssh.com] [2024-09-17 10:32:38.298] DEBUG preferredMac hmac-sha2-512 [2024-09-17 10:32:38.299] DEBUG client cipher addClientMacs [2024-09-17 10:32:38.299] DEBUG client mac list [hmac-sha2-512, hmac-md5, hmac-sha1-96, hmac-md5-96, hmac-sha2-256-etm@openssh.com, hmac-sha2-512-etm@openssh.com, hmac-sha1-etm@openssh.com, hmac-sha2-256, hmac-sha1] [2024-09-17 10:32:38.299] DEBUG getUserAuthFactories [[publickey]] authMethods:publickey [2024-09-17 10:32:38.303] DEBUG After establishing session ClientSessionImpl[Swarna_SFTP@/127.0.0.1:31206] [2024-09-17 10:32:38.317] DEBUG ApacheSession.beginSession(BSR,R,PT) getting the user key information for key id : 123787179a8bfe288node1 For WFID: 4367 [2024-09-17 10:32:38.396] ERROR 000000000000 ApacheSession.verifyAuth(request, authMethod, factory).Authentication verification failed due to: No more authentication methods available
[2024-09-17 10:32:38.396] ERROR [1726549358396] No more authentication methods available [2024-09-17 10:32:38.396] ERRORDTL [1726549358396]org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:127)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.verifyAuth(ApacheSession.java:800)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.authenticateToServer(ApacheSession.java:635)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.access$500(ApacheSession.java:122)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession$1.run(ApacheSession.java:443)   at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)   at java.lang.Thread.run(Thread.java:825) Caused by: org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:379)   at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:315)   at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:252)   at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109)   at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:591)   at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:522)   at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68)   at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:521)   at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1639)   at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:482)   at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)   at org.apache.sshd.mina.MinaService.messageReceived(MinaService.java:156)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:997)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1114)   at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:121)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:634)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1242)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1231)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)   at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)   ... 1 more [2024-09-17 10:32:38.396] ERROR 000000000000 ApacheSession.authenticateToServer(preferredAuth, request).Authenticating via public key failed with error: No more authentication methods available
[2024-09-17 10:32:38.396] DEBUG 000000000000 ApacheSession.authenticateToServer(preferredAuth, request). Public Key authentication also failed, now checking with the combination of password and public key...
[2024-09-17 10:32:38.397] DEBUG preferredCipher null [2024-09-17 10:32:38.397] DEBUG client cipher addClientCiphers [2024-09-17 10:32:38.397] DEBUG client cipher supportCBCCiphers true [2024-09-17 10:32:38.397] DEBUG Client cipher list [aes128-cbc, 3des-cbc, blowfish-cbc, arcfour128, arcfour256, aes192-cbc, aes256-cbc, aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, aes256-gcm@openssh.com] [2024-09-17 10:32:38.397] DEBUG preferredMac hmac-sha2-512 [2024-09-17 10:32:38.397] DEBUG client cipher addClientMacs [2024-09-17 10:32:38.397] DEBUG client mac list [hmac-sha2-512, hmac-md5, hmac-sha1-96, hmac-md5-96, hmac-sha2-256-etm@openssh.com, hmac-sha2-512-etm@openssh.com, hmac-sha1-etm@openssh.com, hmac-sha2-256, hmac-sha1] [2024-09-17 10:32:38.397] DEBUG getUserAuthFactories [[publickey], UserAuthPasswordFactory[password], [publickey]] authMethods:password,publickey [2024-09-17 10:32:38.402] DEBUG After establishing session ClientSessionImpl[Swarna_SFTP@/127.0.0.1:31206] [2024-09-17 10:32:38.417] DEBUG ApacheSession.beginSession(BSR,R,PT) getting the user key information for key id : 123787179a8bfe288node1 For WFID: 4367 [2024-09-17 10:32:38.501] ERROR 000000000000 ApacheSession.verifyAuth(request, authMethod, factory).Authentication verification failed due to: No more authentication methods available
[2024-09-17 10:32:38.501] ERROR [1726549358501] No more authentication methods available [2024-09-17 10:32:38.501] ERRORDTL [1726549358501]org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:127)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.verifyAuth(ApacheSession.java:800)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.authenticateToServer(ApacheSession.java:655)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.access$500(ApacheSession.java:122)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession$1.run(ApacheSession.java:443)   at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)   at java.lang.Thread.run(Thread.java:825) Caused by: org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:379)   at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:315)   at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:252)   at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109)   at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:591)   at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:522)   at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68)   at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:521)   at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1639)   at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:482)   at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)   at org.apache.sshd.mina.MinaService.messageReceived(MinaService.java:156)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:997)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1114)   at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:121)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:634)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1242)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1231)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)   at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)   ... 1 more [2024-09-17 10:32:38.501] ERROR 000000000000 ApacheSession.authenticateToServer(preferredAuth, request).Authenticating via public key and password combination failed with error: No more authentication methods available
[2024-09-17 10:32:38.501] ERROR 000000000000 ApacheSession.authenticateToServer(prefferedAuth, Request).Authentication validation failed due to: No more authentication methods available
[2024-09-17 10:32:38.501] ERROR [1726549358501] No more authentication methods available [2024-09-17 10:32:38.501] ERRORDTL [1726549358501]org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:127)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.verifyAuth(ApacheSession.java:800)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.authenticateToServer(ApacheSession.java:655)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.access$500(ApacheSession.java:122)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession$1.run(ApacheSession.java:443)   at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)   at java.lang.Thread.run(Thread.java:825) Caused by: org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:379)   at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:315)   at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:252)   at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109)   at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:591)   at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:522)   at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68)   at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:521)   at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1639)   at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:482)   at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)   at org.apache.sshd.mina.MinaService.messageReceived(MinaService.java:156)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:997)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1114)   at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:121)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:634)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1242)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1231)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)   at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)   ... 1 more [2024-09-17 10:32:38.501] ERROR ApacheSession.beginSession(BSR,R,PT) runnable caught exception. SSH_DISCONNECT_BY_APPLICATION:SFTP session channel closed by server. For WFID: 4367 [2024-09-17 10:32:38.501] ERROR [1726549358501] No more authentication methods available [2024-09-17 10:32:38.502] ERRORDTL [1726549358501]org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:127)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.verifyAuth(ApacheSession.java:800)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.authenticateToServer(ApacheSession.java:655)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.access$500(ApacheSession.java:122)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession$1.run(ApacheSession.java:443)   at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)   at java.lang.Thread.run(Thread.java:825) Caused by: org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:379)   at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:315)   at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:252)   at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109)   at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:591)   at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:522)   at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68)   at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:521)   at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1639)   at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:482)   at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)   at org.apache.sshd.mina.MinaService.messageReceived(MinaService.java:156)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:997)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1114)   at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:121)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:634)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1242)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1231)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)   at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)   ... 1 more [2024-09-17 10:32:38.502] ERROR 000000000000 GLOBAL_SCOPE ApacheSession.beginSession(BSR,R,PT) runnable caught exception. SSH_DISCONNECT_BY_APPLICATION:SFTP session channel closed by server. For WFID: 4367 org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:127)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)   at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.verifyAuth(ApacheSession.java:800)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.authenticateToServer(ApacheSession.java:655)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession.access$500(ApacheSession.java:122)   at com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession$1.run(ApacheSession.java:443)   at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(Unknown Source)   at java.lang.Thread.run(Thread.java:825) Caused by: org.apache.sshd.common.SshException: No more authentication methods available   at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:379)   at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:315)   at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:252)   at org.apache.sshd.common.session.helpers.CurrentService.process(CurrentService.java:109)   at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:591)   at org.apache.sshd.common.session.helpers.AbstractSession.lambda$handleMessage$0(AbstractSession.java:522)   at org.apache.sshd.common.util.threads.ThreadUtils.runAsInternal(ThreadUtils.java:68)   at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:521)   at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1639)   at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:482)   at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)   at org.apache.sshd.mina.MinaService.messageReceived(MinaService.java:156)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:997)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1300(DefaultIoFilterChain.java:48)   at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:1114)   at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:121)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:641)   at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:634)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:539)   at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$1200(AbstractPollingIoProcessor.java:68)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1242)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.process(AbstractPollingIoProcessor.java:1231)   at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:683)   at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160)   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)   ... 1 more [2024-09-17 10:32:38.502] ERROR ApacheSession.failedSequence(S,R) No more authentication methods available:SSH_DISCONNECT_BY_APPLICATION:SFTP session channel closed by server. : [2024-09-17 10:32:38.502] DEBUG Response.sendResults - Entered. Time - 1726549358502 [2024-09-17 10:32:38.502] DEBUG Response.sendResults - isSynchronized. Time - 1726549358502 [2024-09-17 10:32:38.502] DEBUG Response.sendResults - exit. Time - 1726549358502 [2024-09-17 10:32:38.502] DEBUG ApacheClient.beginSession(BSR) exiting.For WFID: 4367 [2024-09-17 10:32:38.503] DEBUG ApacheSession.beginSession(BSR,R,PT) transport For WFID: 4367 [2024-09-17 10:32:38.504] DEBUG BeginSessionService.primitiveProcessData() - Incremented Session Token Count for SwarnaSFTPClient20_SFTPClientAdapter20_node1 For Wfid:4367 [2024-09-17 10:32:38.504] DEBUG BeginSessionService.processData() - Un-registered thread with Ops. [2024-09-17 10:32:38.504] DEBUG BeginSessionService.processData() - Exiting ... For Wfid:4367

Expected behavior

Client should be able to connect to sftp server using Public Key authentication

Relevant log output

No response

Other information

No response

tomaswolf commented 1 day ago

From these logs it's impossible to say what might be the issue. We also have no idea what com.sterlingcommerce.woodstock.services.apachesftpclient.client.ApacheSession does. It looks as if there's two separate connections, first only with "password" auth, then only with "publickey" auth. The log does not show the server's proposals. Is ApacheSession somehow re-using a ClientSession object? Does it set up publickey auth correctly so that it can find the public key? What kind of key is it? Does the server support the necessary signature algorithms? Does the client? Note that in the default settings, ssh-dss, ssh-dss-cert-v01@openssh.com, and ssh-rsa-cert-v01@openssh.com are disabled, i.e., DSA keys and certificates, and RSA certificates with a SHA1 signature.