华三交换机Unable to negotiate with 10.10.1.1 port 22: no matching host key type found. Their offer: ssh-rsa
时间: 2025-04-28 15:27:52 浏览: 63
### 解决 H3C 交换机 SSH 密钥类型不匹配问题
当遇到 `Unable to negotiate with IP port 22: no matching host key type found. Their offer: ssh-rsa` 错误时,这通常是因为客户端和服务器之间无法就支持的主机密钥算法达成一致[^1]。
对于 H3C 设备而言,可以通过调整设备配置来增加对更多主机密钥类型的兼容性。具体操作如下:
#### 修改 H3C 交换机上的 SSH 配置
为了使 H3C 交换机能接受更广泛的主机密钥类型,在命令行界面执行以下指令可以更新 SSH 的参数设置:
```bash
system-view
crypto key generate rsa general modulus 2048
ip ssh server algorithm key-exchange diffie-hellman-group1-sha1,diffie-hellman-group14-sha1
ip ssh server algorithm encryption aes128-cbc,3des-cbc,aes192-cbc,aes256-cbc
ip ssh server algorithm mac hmac-sha1,hmac-md5
quit
save
```
上述命令序列不仅增加了 RSA 主机密钥的支持,还扩展了其他加密协商选项,从而提高了与不同版本 OpenSSH 客户端之间的互操作性[^2]。
如果仍然存在连接失败的情况,则可能需要进一步检查本地 SSH 客户端的安全策略设定,确保其允许使用由远程 H3C 提供的具体密钥类型(如 `ssh-rsa`)。某些较新的操作系统默认禁用了这些旧版协议或算法;此时可通过编辑 `/etc/ssh/ssh_config` 或者通过环境变量指定额外参数的方式放宽限制条件[^3]。
例如,在 Linux 上启动会话前可临时添加 `-oHostKeyAlgorithms=+ssh-rsa` 参数给 `ssh` 命令以启用特定于该次连接的宽松验证模式:
```bash
ssh -o HostKeyAlgorithms=+ssh-rsa [email protected]
```
此方法适用于那些已经升级到不再自动信任传统 SSH-RSA 签名机制的操作系统上运行的客户端程序[^4]。
阅读全文
相关推荐
















