xshell连接AWS,EC2,提示要求输入密码

EC2突然被玩坏,重新创建了一个实例,使用以前的密钥对,
发现xshell连接的时候,需要输入public key的密码,
没有设置过啊,以前都是直接进入。请问有大神知道原因么?

阅读 6.1k
3 个回答

问题已找到,多谢各位的回复,由于使用了最新版的Ubuntu22.04,OpenSSH已经升级到了8.9p1版本,弃用了RSA/SHA1密钥算法导致老旧客户端无法识别。所以出现此问题。
先通过putty登录AWS EC2服务器,再如下设置即可。
需要在服务器端的/etc/ssh/sshd_config配置中增加

HostkeyAlgorithms +ssh-rsa
PubkeyAcceptedAlgorithms +ssh-rsa

重启systemctl restart sshd 即可

这不是告诉你了么,你用的密钥对不正确,所以让你重新输入一遍。

你要是找不回来了就通过 AWS 重置吧。

换句话说,远程 ubuntu 的 ~/.ssh/authorized_keys 文件中没有你这个公钥可以匹配你使用的私钥,要不使用密码登录,要不通过服务商后台的 ssh 登录后添加一下公钥。

image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进