阿里云ECS实例使用ssh命令登录时出现“No supported key exchange algorithms”报错的解决方法
<p><strong>问题描述</strong></p>
<p>
ECS实例无法使用ssh命令登录,通过VNC登录实例发现/var/log/secure日志文件中出现“No supported key exchange algorithms”报错。</p>
<p align="center">
<img title="阿里云ECS实例使用ssh命令登录时出现“No supported key exchange algorithms”报错的解决方法" alt="阿里云ECS实例使用ssh命令登录时出现“No supported key exchange algorithms”报错的解决方法" align="" border="0" src="https://zhuji.jb51.net/uploads/img/202305/579c82d15ee278a927ccd00d81e6c440.jpg" width="750"></p>
<p>
<strong>问题原因</strong></p>
<p>
/etc/ssh目录中的秘钥文件大小都为0。</p>
<p align="center">
<img title="阿里云ECS实例使用ssh命令登录时出现“No supported key exchange algorithms”报错的解决方法" alt="阿里云ECS实例使用ssh命令登录时出现“No supported key exchange algorithms”报错的解决方法" align="" border="0" src="https://zhuji.jb51.net/uploads/img/202305/dcb4f9d7f6811de5ce435ca1b2f335c7.jpg" width="533"></p>
<p>
<strong>解决方案</strong></p>
<p>
您可以通过如下命令,生成新的秘钥文件,覆盖旧的秘钥文件。</p>
<p>
说明:若执行命令过程中有选择提示时,直接使用回车键进行下一步操作。</p>
<p>
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key</p>
<p>
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key</p>
<p>
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key</p>
<p>
适用于</p>
<p>
•云服务器ECS</p>
<p>
•轻量应用服务器</p> 看到这个报错我也遇到过!当时急得我不行,后来发现确实是SSH主机密钥文件损坏导致的。
按照楼主的办法成功解决了,感谢分享!
不过提醒一下各位同学,执行完那些命令后,最好重启一下ssh服务:
systemctl restart sshd
或者
service sshd restart
另外预防措施也很重要,平时尽量不要直接修改/etc/ssh目录下的文件,或者在修改前先备份一下。看来阿里云的镜像有时候也会出现这种问题,真是涨知识了!
再次感谢楼主的详细教程,图文并茂很清楚,帮了大忙!
頁:
[1]