【运维部署】亚马逊云服务器安装后通过Xhell远程登录提示“所选的用户密钥未在远程主机上注册。请再试一次”

这里写自定义目录标题

  • 背景
  • 解决方案
    • 第一步 确认配置
    • 第二步 确认权限
    • 方案C

背景

最新亚马逊云服务准备扩容,新建了一台Ubuntu服务器,密钥对使用原来服务器上的密钥对,创建后直接迁移到了新的服务器上。

通过 less .ssh/authorized_keys 可以查到原来的公钥存在该目录下

此时通过Xhell使用证书进行免登录,提示“所选的用户密钥未在远程主机上注册。请再试一次。”

【运维部署】亚马逊云服务器安装后通过Xhell远程登录提示“所选的用户密钥未在远程主机上注册。请再试一次”_第1张图片

解决方案

第一步 确认配置

找到 SSH 配置文件 /etc/ssh/sshd_config 中这两行。vim 编辑文件,去掉注释。
#AuthorizedKeysFile .ssh/authorized_key
#PubkeyAuthentication yes

第二步 确认权限

sudo chmod 700 .ssh/
sudo chmod 600 .ssh/authorized_keys

## 第三步 确认公钥
```powershell
less .ssh/authorized_keys

1.没有这个文件,请创建文件并填入你的公钥
2.有这个文件,填入你的公钥
3.有文件而且里面有公钥,新加一行填入你的公钥

方案C

#远程服务器上查看sshd的状态
service sshd status
#也可以
cat /var/log/auth.log

发现提示:“userauth_pubkey: key type ssh-rsa not in PubkeyAcceptedAlgorithms [preauth]”

# root 模式下执行命令
 echo 'PubkeyAcceptedAlgorithms=+ssh-rsa' >> /etc/ssh/sshd_config
systemctl restart sshd

至此问题解决。我是从方案A处理到了方案C,耽误半天时间。引以为戒

你可能感兴趣的:(服务部署,亚马逊云,运维,服务器,linux)