SecureCRT低版本连接高版本SSH服务器报错无法连接的问题,如SecureCRT连接Debian11.3: ```shell Key exchange failed. No compatible key exchange method. The server supports these methods: curve25519-sha256,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 ``` # 定位问题 是因为升级ssh导致的 (ssh6.7以上屏蔽不安全算法) # 解决办法 paramiko模块版本问题,重试另一台服务器,发现可以连接,排除客户端问题; 想起曾经自动部署工具ideploy连接不上的配置,于是比对`/etc/ssh/sshd_conf`和`/usr/etc/sshd_conf`文件,发现能连接上的机器比不能连接上的机器末尾多了一行加密算法。 # 解决步骤 1、编辑`/etc/ssh/sshd_config`文件 ```shell vim /etc/ssh/sshd_config ``` 2、在内容最后添加如下: ```shell KexAlgorithms curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1 ``` 3、重启ssh服务 ```shell service ssh restart ```