Unable to negotiate with 127.0.0.1 port 29215: no matching host key type found. Their offer: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha> 解决

简介: 【5月更文挑战第5天】Unable to negotiate with 127.0.0.1 port 29215: no matching host key type found. Their offer: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha> 解决

这个错误信息表明你正尝试通过SSH连接到本地主机(127.0.0.1)的29215端口,但是在密钥交换过程中遇到了问题,因为没有找到匹配的主机密钥类型。SSH客户端和服务器之间必须就密钥类型达成一致,而这里列出的服务器提供的密钥类型(ssh-rsa, ssh-dss, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521)都不被你的客户端所支持或允许。

要解决这个问题,你可以尝试以下几个步骤:

  1. 更新SSH客户端配置

    • 打开SSH客户端的配置文件(通常是~/.ssh/config),检查是否有限制使用的密钥类型。如果有,确保列表中包含了服务器提供的至少一种密钥类型。例如,你可以添加如下行来允许使用ecdsa密钥:
      Host *
        HostkeyAlgorithms ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-rsa,ssh-dss
      
  2. 升级SSH客户端

    • 如果你的SSH客户端版本较旧,可能不支持服务器提供的某些密钥类型。尝试更新到最新版本的SSH客户端。
  3. 修改服务端配置(如果可以访问服务端的话):

    • 在服务端的SSH配置文件(通常是/etc/ssh/sshd_config)中,添加或修改HostKeyAlgorithms条目,以包含客户端支持的密钥类型。例如:
      HostKeyAlgorithms ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
      
    • 修改后记得重启SSH服务让更改生效。
  4. 检查代理或隧道设置

    • 如果你正在通过一个代理或SSH隧道进行连接,确保这些中间层没有对密钥类型做额外的限制。
  5. 临时解决方案

    • 如果以上方法都不可行或你只是需要临时连接,可以尝试在命令行中直接指定允许的密钥算法,比如:
      ssh -oHostKeyAlgorithms=+ssh-rsa user@127.0.0.1 -p 29215
      
      这将临时允许使用ssh-rsa密钥类型进行连接。

请根据你的具体情况选择合适的方法尝试解决。

目录
相关文章
|
15天前
|
存储 网络安全
Curl error (60): SSL peer certificate or SSH remote key was not OK for https://update.cs2c.com.cn/NS/V10/V10SP2/os/adv/lic/base/x86_64/repodata/repomd.xml [SSL: no alternative certificate subject name matches target host name 'update.cs2c.com.cn']
【10月更文挑战第30天】在尝试从麒麟软件仓库(ks10-adv-os)下载元数据时,遇到 SSL 证书验证问题。错误提示为:`Curl error (60): SSL peer certificate or SSH remote key was not OK`。可能原因包括证书不被信任、证书与域名不匹配或网络问题。解决方法包括检查网络连接、导入 SSL 证书、禁用 SSL 证书验证(不推荐)、联系仓库管理员、检查系统时间和尝试其他镜像。
43 1
|
3月前
|
网络协议 Shell 网络安全
ssh: connect to host github.com port 22: Connection refused
本文讨论了在使用Git命令操作GitHub时遇到的"ssh: connect to host github.com port 22: Connection refused"错误,分析了可能的原因,并提供了使用443端口或https协议作为解决方案,最终确定问题是由于DNS解析错误导致,通过修改hosts文件解决。
ssh: connect to host github.com port 22: Connection refused
|
4月前
|
网络安全 开发工具 git
【git】解决git报错:ssh:connect to host github.com port 22: Connection timed out 亲测有效
【git】解决git报错:ssh:connect to host github.com port 22: Connection timed out 亲测有效
1130 1
|
6月前
|
安全 网络安全
jsch 报错 no matching host key type found. Their offer: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha> 如何处理
【5月更文挑战第24天】jsch 报错 no matching host key type found. Their offer: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha> 如何处理
527 1
|
6月前
|
安全 网络安全
jsch 报错 no matching host key type found. Their offer: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha>问题处理方法
【5月更文挑战第10天】jsch 报错 no matching host key type found. Their offer: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha>问题处理方法
290 0
|
13天前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
5月前
|
安全 Linux Shell
Linux中SSH命令介绍
Linux中SSH命令介绍
136 2
|
3月前
|
安全 Linux 网络安全
在Linux中,如何配置SSH以确保远程连接的安全?
在Linux中,如何配置SSH以确保远程连接的安全?
|
3月前
|
安全 Linux Shell
SSH 命令完整实用指南 | Linux SSH 服务
【8月更文挑战第20天】
409 0
|
3月前
|
安全 Linux Shell
如何在 Linux 服务器上配置基于 SSH 密钥的身份验证
如何在 Linux 服务器上配置基于 SSH 密钥的身份验证
185 0