I am trying to connect to a server using JSch. I get the "Negotiation fail" error. I checked the sshd_config file and got the following info:
UsePAM yes
PasswordAuthentication no
Ciphers aes128-ctr,aes256-ctr,arcfour256,arcfour,aes128-cbc,aes256-cbc
AllowTcpForwarding no
PermitRootLogin no
The rest of the scripts are commented out. As you see it doesn't mention anything about supported Key Exchange methods. 1. Does this seem to be the problem? or is there any other reason this error shows up? It is very hard for me to get the approval to make changes and test, so I wanted to make sure first and then apply the changes.
Also, this is all I get from the logger:
INFO: Connecting to xx.xxx.xxx.xxx port 22
INFO: Connection established
INFO: Remote version string: SSH-2.0-OpenSSH_5.1
INFO: Local version string: SSH-2.0-JSCH-0.1.31
INFO: SSH_MSG_KEXINIT received
INFO: SSH_MSG_KEXINIT sent
Exception in thread "main" com.jcraft.jsch.JSchException: Algorithm negotiation fail
at com.jcraft.jsch.Session.receive_kexinit(Session.java:540)
at com.jcraft.jsch.Session.connect(Session.java:288)
at com.jcraft.jsch.Session.connect(Session.java:145)
at SSHConnection.connect(SSHConnection.java:21)
at SSHConnection.main(SSHConnection.java:25)
- Is there any other ways to find out the Key Exchange methods supported by the server?
- Are there other ways to connect to this server? I need to integrate this into my Java program.