我生成了一个公共/私有 rsa 密钥对,通过 ssh 访问远程主机,无需输入密码,一切正常,直到我隐藏用户的文件夹(添加 . 到名称)/home/.user)。现在,在使用 SSH 连接时,它找不到要连接的公钥并要求输入密码。
ssh -i my_private_key [email protected]
一旦我使用密码连接,它就会显示:
Could not chdir to home directory /home/user: No such file or directory
PS 没有更改.sshd_config
文件。那么如何修复它以便它可以与隐藏文件夹一起使用呢?
答案1
编辑/etc/passwd
所以它也指向/home/.user
?
答案2
用户有自己的主目录。当您通过 ssh 登录并成功建立连接时,用户的会话将在他自己的主目录中启动。如果该目录丢失,您会收到错误消息。此外,如果您移动了 /home/user 目录,它包含 .ssh 目录,其中定义了您的公钥授权密钥文件。
您可以尝试使用类似的方法将主目录更改为“隐藏”目录
usermod -d /home/.user user
这将使 ssh 读取公钥,并正确启动会话。但“隐藏”主目录仍然可见/etc/密码例如。