无法再使用私钥通过 SSH 进入 Oracle 云服务器

无法再使用私钥通过 SSH 进入 Oracle 云服务器

昨天,在我尝试执行 SCP 命令将我在 VM 上创建的 tarball 文件发送到本地计算机后,出现了这个问题,它出现了一个文本块,通知我该地址未知,以及服务器的 ECDSA 指纹,然后询问我是否要继续,它希望我输入 3 个选项,是、否、指纹,我输入了是,它将我的虚拟服务器的 IP 地址添加到已知主机列表中,但我从未收到 tarball 文件,因为它随后给了我这个输出:用户名@ip 地址:权限被拒绝(公钥),从那时起,当我尝试通过 SSH 进入我的虚拟服务器时,我收到以下输出:加载密钥“/path/to/.ssh/private key”:权限被拒绝用户名@ip 地址:权限被拒绝(公钥)

我知道这与更改私钥权限有关,因为当我尝试访问文件时,它说我无法读取文件,我无法使用命令行中的 sudo chmod 600 更改权限,该命令似乎只执行了它对相关文件没有任何作用,因此我实际上被锁定在虚拟服务器之外,我需要弄清楚如何将权限改回原来的状态,这样我的公钥才能真正读取文件并确认它与自身匹配,这样我就可以被授予访问我的服务器的权限。

答案1

听起来像是您的本地 ssh 配置权限有问题。要修复您的本地 ssh 密钥权限:

chown -R $USER ~/.ssh
chmod 700 ~/.ssh 
chmod 600 ~/.ssh/id_rsa ~/.ssh/authorized_keys ~/.ssh/known_hosts
chmod 644 ~/.ssh/id_rsa.pub ~/.ssh/config

一切都会恢复正常。

相关内容