我按照本指南设置 ssh 密钥: https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys-on-ubuntu-1804
然而,完成后我意识到我犯了一个错误。我已经在文件中更改PasswordAuthentication yes
为。PasswordAuthentication no
/etc/ssh/sshd_config
现在,当我尝试 ssh 进入计算机时,出现“权限被拒绝(公钥)”错误。如果没有物理访问计算机,我无法更改此设置。
有没有办法让计算机的 root 用户可以访问我的目录中的该文件并更改它?或者还有其他解决方案的想法吗?
答案1
我无法解决您访问计算机的问题,但是这个问题:
有没有办法让计算机的 root 用户可以访问我的目录中的该文件并更改它?
是的,只要文件系统不是 NFS 或 AFS(或其他一些),root 用户就可以在几乎所有操作系统中读取、写入和执行任何文件。
但是您正在谈论的文件/etc/ssh/sshd_config
属于 root 而不是用户,因此,编辑它的必须是 root (或具有 sudo 权限的用户)。
您可以使用 nano(或其他一些(简单)编辑器)编辑该文件:
EDITOR=nano sudoedit /etc/ssh/sshd_config
答案2
如果您使用 DO,您可以使用数字海洋控制台以 root 身份登录并使用 nano、vim 或类似程序修复该文件。其他托管服务可能提供其他类似的访问方法。
如果您没有为 root 注册 ssh 密钥,则在没有某种心理或控制台访问权限的情况下,您将无法使用 root 登录。