ssh连接失败,j2ssh给出TransportProtocolException

时间:2018-04-19 08:43:31

标签: ssh j2ssh

我正在使用j2ssh-core-0.2.9.jar来ssh到主机。

在日志中我可以看到:

Client Algorithms: [diffie-hellman-group1-sha1]

Server Algorithms: [curve25519-sha256@libssh.org, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, diffie-hellman-group-
exchange-sha256, diffie-hellman-group-exchange-sha1, diffie-hellman-group14-sha1]

我阅读了提供的文件:

https://www.openssh.com/legacy.html

我去了我正在尝试ssh并执行的主持人:

ssh -Q kex

输出结果为:

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
curve25519-sha256@libssh.org

我无法理解如何解决这个问题,因为即使在日志中我可以看到服务器的密钥交换方法不包含diffie-hellman-group1-sha1但是当我执行ssh-Q时在主机上使用kex命令,输出显示diffie-hellman-group1-sha1存在。

请帮忙。

1 个答案:

答案 0 :(得分:0)

现在大约已有10年历史的SSH客户端不支持更现代服务器更强大,更安全的算法。

我建议(作为您正在使用的API的作者)停止使用它并转移到其他API。有更多最新的开源Java SSH API可供您使用,包括我自己的J2SSH Maverick,JSch,我相信会有评论为其他人提供案例。