起因本文解决方案来源于:Ubuntu 18.04 root 使用ssh密钥远程登陆
Ubuntu默认禁止root用户远程登陆。
腾讯云官方所给的解决方案:Ubuntu 系统如何使用 root 用户登录实例?但是我们需要的是通过密钥登陆root用户,而非密码。
原因解决通过find -name authorized_keys可以看到root用户和ubuntu用户分别对应一个authorized_keys文件。ubuntu用户加载了正确的ssh公钥,而root用户下的authorized_keys文件内容则为空。
# 打开 ubuntu 用户的 authorized_keys 文件所在目录cd /home/ubuntu/.ssh/# 拷贝 authorized_keys 文件覆盖root用户的 authorized_keys 文件cp -i authorized_keys /root/.ssh/# 重启SSH服务sudo service ssh restart