SecureCRT使用SSH登录服务器报错:Key exchange failed

SecureCRT使用SSH登录Ubuntu服务器报错:Key exchange failed

原因:

ssh客户端与服务器的公钥协商失败,SecureCRT客户端所指定的秘钥交换算法(KexAlgorithms ),不在服务端支持范围内。可能是服务端的sshd版本比较高、默认配置不支持一些比较旧的秘钥交换算法。

SecureCRT 7.0 仅支持下面几种:

解决方案:

方案1)升级SecureCRT到更高的版本。

方案2)修改sshd服务端配置、指定秘钥交换算法列表。以 ubuntu 为例:

vi /etc/ssh/sshd_config

在配置文件末尾追加配置(如果已经存在、就修改 KexAlgorithms 配置)如下:

for SecurCRT (version < 8) ssh client

KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diff
ie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1

或者配置:

KexAlgorithms +diffie-hellman-group-exchange-sha256,diffie-hellman-group1-sha1

重启服务:service sshd restart

方案3)如果无法本地登录管理服务端、只能ssh访问服务端的话,那可以试试用其他ssh客户端软件(支持服务端秘钥交换算法)先登录、修改服务端sshd配置文件、重启服务,然后就可以通过SecureCRT客户端登录了。

例如,如果安装了git,可以用git自带的 ssh.exe 登录、修改服务端配置。

cmd 命令行执行 ssh.exe 登录:

cd c:\Program Files\Git\usr\bin\

ssh.exe root@192.168.1.100

修改sshd配置后,重启sshd服务,然后就可以用SecureCRT SSH登录了。

另外,注意:如果是银河麒麟V10,配置会有差异,如果只是修改 KexAlgorithms 还不够,还是会报错:

Key exchange failed.

No compatible key exchange method. The server supports these methods: curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256

No compatible MAC. The server supports these MACs: hmac-sha2-512,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha2-256-etm@openssh.com

后面仔细查看sshd配置文件,配置有些差异,配置有区别:

如果是银河麒麟V10系统,配置如下,需要注释掉原来的 Ciphers、MACs、KexAlgorithms 参数,然后再重新配置 KexAlgorithms 追加到末尾:

Protocol 2

LogLevel VERBOSE

PubkeyAuthentication yes

RSAAuthentication yes

IgnoreRhosts yes

RhostsRSAAuthentication no

HostbasedAuthentication no

PermitEmptyPasswords no

PermitUserEnvironment no
#Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com

ClientAliveCountMax 0

Banner /etc/issue.net
#MACs hmac-sha2-512,hmac-sha2-512-etm@openssh.com,hmac-sha2-256,hmac-sha2-256-etm@openssh.com

StrictModes yes

AllowTcpForwarding no

AllowAgentForwarding no

GatewayPorts no

PermitTunnel no
#KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org,diffie-hellman-group-exchange-sha256

national algorithm standards supports

#HostKeyAlgorithms sm2

for SecurCRT (version < 8) ssh client

KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1

相关推荐
落羽的落羽几秒前
【Linux系统】中断机制、用户态与内核态、虚拟地址与页表的本质
java·linux·服务器·c++·人工智能·算法·机器学习
云智慧AIOps社区2 分钟前
AI驱动制造业智能化变革:云智慧在苏州CIO研讨会分享运维破局之道
运维·人工智能·aiops·ai agent·sre·sre 智能体
.select.1 小时前
HTTPS RSA 握手解析
服务器·网络协议·https
!沧海@一粟!7 小时前
麒麟Zabbix Agent安装配置全攻略
linux·服务器·zabbix
鸠摩智首席音效师11 小时前
如何使用 docker exec 在容器中运行命令 ?
运维·docker·容器
似水এ᭄往昔11 小时前
【Linux】自动化构建-make/Makefile
linux·运维·服务器·ubuntu
顶点多余12 小时前
Linux“信号“从硬件到软件详解
linux·运维·服务器
勘察加熊人12 小时前
ai飞卢小说自动化处理工作流获得提问素材
运维·自动化
瀚高PG实验室13 小时前
rpm包安装报错:cannot open Packages index using db5 - Cannot allocate memory (12)
linux·运维·服务器·瀚高数据库
云计算老刘13 小时前
2. DNS 服务器
运维