问题
使用xshell生成秘钥对,然后把公钥传到远程主机/root/.ssh目录下,改名为authorized_keys,但使用证书登录时总是报这个错误信息:
“所选的用户密钥未在远程主机上注册,请再试一次”。
首先,修改 /etc/ssh/sshd_config,将PubkeyAuthentication yes前的注释去掉,还是报同样的错误。
接着,使用systemctl restart sshd重启sshd服务,再登录,问题依旧。
解决
最后,检查证书时,发现证书内容与其他的证书不一样,仔细一看,原来是私钥。所以问题的原因是传错秘钥了,应该传公钥,结果把私钥给传上去了。
重新上传公钥,更新authorized_keys文件内容,即可正常登录。
总结为一句话:使用SSH证书登录时,注意服务器上放置的是公钥,私钥在本地。