La actualización de la versión SSH provoca un error de conexión

El sistema de la empresa utiliza el complemento ssh de terceros jsch-0.1.39.jar. La recopilación era normal antes, pero el servidor ssh del fabricante se actualizó a la versión 2.0 y luego el programa informó un error. La excepción es la siguiente :

com.jcraft.jsch.JSchException: Algorithm negotiation fail
        at com.jcraft.jsch.Session.receive_kexinit(Session.java:510)
        at com.jcraft.jsch.Session.connect(Session.java:285)
        at com.jcraft.jsch.Session.connect(Session.java:149)
        at ...........

Después de buscar en Internet, la mayoría dijo que fue causado por métodos de cifrado inconsistentes entre el cliente y el servidor después de la actualización de la versión. La solución es modificar el archivo /etc/ssh/sshd_config o /usr/etc/sshd_config. y agregue el siguiente contenido:
 KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh -sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,[email protected]

Sin embargo, el servidor pertenece al fabricante y no les resulta fácil modificarlo, este método se pasa.

Más tarde, un colega dijo que se había encontrado con esto antes y que estaría bien si actualizaba el complemento, por lo que descargó decisivamente la última versión de jsch-0.1.53.jar y, después de reemplazarla, todo estuvo bien.

Si no comprende las cosas subyacentes, simplemente tome notas.

Supongo que te gusta

Origin blog.csdn.net/u013456765/article/details/52192812
Recomendado
Clasificación