无法使用 Vagrant 用户访问虚拟机

无法使用 Vagrant 用户访问虚拟机

我确实通过以下方式更改了 vagrant 用户权限:

$ grep vagrant /etc/passwd
  vagrant:x:0:0::/home/vagrant:/bin/sh

然后我注销了,现在我无法登录,我该如何解决这个问题?

谢谢你!

答案1

Vagrant 使用 ssh 密钥登录。在将 vagrant 用户的 UID 更改为 0 时,您可能违反了sshd有关authorized_keys文件所有权的规则。

来自 sshd(8):

如果此文件、~/.ssh 目录或用户的主目录可由其他用户写入,则该文件可能会被未经授权的用户修改或替换。在这种情况下,除非 StrictModes 选项已设置为“no”,否则 sshd 将不允许使用它。

如果你必须更改 vagrant 的 UID,那么你可以尝试将 authorized_keys 文件的所有者更改为 root:

chown root ~vagrant/.ssh/authorized_keys

我其实还没有尝试过这个!

相关内容