Attempting to get a connection to a SFTP server.
Successfully tested the connection details and ppk keyfile via WinSCP
Same configuration and Keyfile fails in SSHConnector node with error “Authentication Failed”
knime.log is showing the error
ERROR : KNIME-Worker-15-SSH Connector 4:92 : : Node : SSH Connector : 4:92 : Execute failed: Authentication failed
java.io.IOException: Authentication failed
…
Caused by: org.apache.sshd.common.SshException: No more authentication methods available
at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:126)
Does anyone have any ideas on how to resolve this issue?
Hello @clintbowron ,
if you still have problems connecting to your SFTP server, can you please provide the full stacktrace of the error. What version of KNIME Analytics Platform are you using to connect.
Bye
Tobias
1 Like
Assumption is something to do with an unsupported encryption algorithm within the key file
Worked with the vendor hosting the SFTP Server and they state not supporting ssh-rsa SHA-1 key signature. We got connection working when shifted to a 2048b ed25519 key instead.
Using KNIME Analytics Platform v 4.7.2
Full Knime.log
2023-06-08 09:01:20,219 : ERROR : KNIME-Worker-18-SSH Connector 3:86 : : Node : SSH Connector : 3:86 : Execute failed: Authentication failed
java.io.IOException: Authentication failed
at org.knime.ext.ssh.filehandling.fs.SftpSessionFactory.toIOException(SftpSessionFactory.java:219)
at org.knime.ext.ssh.filehandling.fs.SftpSessionFactory.createSession(SftpSessionFactory.java:208)
at org.knime.ext.ssh.filehandling.fs.ConnectionResourcePool.start(ConnectionResourcePool.java:202)
at org.knime.ext.ssh.filehandling.fs.SshFileSystemProvider.(SshFileSystemProvider.java:103)
at org.knime.ext.ssh.filehandling.fs.SshFileSystem.createProvider(SshFileSystem.java:93)
at org.knime.ext.ssh.filehandling.fs.SshFileSystem.(SshFileSystem.java:86)
at org.knime.ext.ssh.filehandling.fs.SshFSConnection.(SshFSConnection.java:70)
at org.knime.ext.ssh.filehandling.node.SshConnectorNodeModel.execute(SshConnectorNodeModel.java:133)
at org.knime.core.node.NodeModel.executeModel(NodeModel.java:549)
at org.knime.core.node.Node.invokeFullyNodeModelExecute(Node.java:1267)
at org.knime.core.node.Node.execute(Node.java:1041)
at org.knime.core.node.workflow.NativeNodeContainer.performExecuteNode(NativeNodeContainer.java:595)
at org.knime.core.node.exec.LocalNodeExecutionJob.mainExecute(LocalNodeExecutionJob.java:98)
at org.knime.core.node.workflow.NodeExecutionJob.internalRun(NodeExecutionJob.java:201)
at org.knime.core.node.workflow.NodeExecutionJob.run(NodeExecutionJob.java:117)
at org.knime.core.util.ThreadUtils$RunnableWithContextImpl.runWithContext(ThreadUtils.java:367)
at org.knime.core.util.ThreadUtils$RunnableWithContext.run(ThreadUtils.java:221)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at org.knime.core.util.ThreadPool$MyFuture.run(ThreadPool.java:123)
at org.knime.core.util.ThreadPool$Worker.run(ThreadPool.java:246)
Caused by: org.apache.sshd.common.SshException: No more authentication methods available
at org.apache.sshd.common.future.AbstractSshFuture.verifyResult(AbstractSshFuture.java:126)
at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:39)
at org.apache.sshd.client.future.DefaultAuthFuture.verify(DefaultAuthFuture.java:32)
at org.apache.sshd.common.future.VerifiableFuture.verify(VerifiableFuture.java:68)
at org.knime.ext.ssh.filehandling.fs.SftpSessionFactory.createSession(SftpSessionFactory.java:203)
… 19 more
Caused by: org.apache.sshd.common.SshException: No more authentication methods available
at org.apache.sshd.client.session.ClientUserAuthService.tryNext(ClientUserAuthService.java:353)
at org.apache.sshd.client.session.ClientUserAuthService.processUserAuth(ClientUserAuthService.java:288)
at org.apache.sshd.client.session.ClientUserAuthService.process(ClientUserAuthService.java:225)
at org.apache.sshd.common.session.helpers.AbstractSession.doHandleMessage(AbstractSession.java:526)
at org.apache.sshd.common.session.helpers.AbstractSession.handleMessage(AbstractSession.java:452)
at org.apache.sshd.common.session.helpers.AbstractSession.decode(AbstractSession.java:1524)
at org.apache.sshd.common.session.helpers.AbstractSession.messageReceived(AbstractSession.java:412)
at org.apache.sshd.common.session.helpers.AbstractSessionIoHandler.messageReceived(AbstractSessionIoHandler.java:64)
at org.apache.sshd.common.io.nio2.Nio2Session.handleReadCycleCompletion(Nio2Session.java:359)
at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:336)
at org.apache.sshd.common.io.nio2.Nio2Session$1.onCompleted(Nio2Session.java:333)
at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.lambda$completed$0(Nio2CompletionHandler.java:38)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at org.apache.sshd.common.io.nio2.Nio2CompletionHandler.completed(Nio2CompletionHandler.java:37)
at java.base/sun.nio.ch.Invoker.invokeUnchecked(Unknown Source)
at java.base/sun.nio.ch.Invoker$2.run(Unknown Source)
at java.base/sun.nio.ch.AsynchronousChannelGroupImpl$1.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)
I am having the same issue. Was there ever a fix for this? I see that it has been and ongoing problem.
Was never a fix for this. Had to get the vendor to provide a key with an older encryption algorithm