如何包含使用 OpenSSH 客户端连接路由器所需的密钥交换算法?

如何包含使用 OpenSSH 客户端连接路由器所需的密钥交换算法?

使用适用于 Windows 的 OpenSSH_8.9p1,我尝试连接到 NuCom 路由器 NC-WR764TGV:

ssh [email protected]

输出:

无法与 192.168.1.1 端口 22 协商:未找到匹配的密钥交换方法。
他们的提议:diffie-hellman-group14-sha1、diffie-hellman-group1-sha1、[电子邮件保护]

因此我尝试:

ssh [email protected] -oKexAlgorithms=+diffie-hellman-group1-sha1

输出:

无法与 192.168.1.1 端口 22 协商:未找到匹配的主机密钥类型。
他们的提议:ssh-rsa

然后:

ssh [email protected] -oKexAlgorithms=+diffie-hellman-group1-sha1,+ssh-rsa    

输出:

不支持的 KEX 算法“ssh-rsa”命令行第 0 行:错误的 SSH2 KexAlgorithms‘+ssh-rsa’。

使用 Linux 客户端上的 ssh 获得了相同的结果。我如何与该路由器通信?

答案1

“ssh-rsa” 不是密钥交换算法 - 它是一种公钥签名算法,并进入HostKeyAlgorithms和/或PubkeyAcceptedAlgorithms列表(前者在主机验证期间接受来自服务器的 RSA-SHA1 签名,后者发送 RSA-SHA1 签名用户公钥认证期间的服务器)

(还请注意,+-标志只能为整个列表指定一次 - 它们不会对单个项目重复指定。)

对于 OpenSSH 不再支持的真正古老的设备,请使用plinkPuTTY 的 SSH 客户端。

相关内容