Linux

SSH 找不到隱藏的使用者文件夾

  • August 19, 2021

我生成了一個公鑰/私鑰 rsa 密鑰對,無需輸入密碼即可通過 ssh 訪問遠端主機,一切正常,直到我隱藏了使用者的文件夾(添加 . 到名稱*/home/.user*)。現在在使用 SSH 連接時,它找不到要連接的公鑰並要求輸入密碼。

ssh -i my_private_key user@x.x.x.x

一旦我使用密碼連接它就會說:

Could not chdir to home directory /home/user: No such file or directory

PS沒有改變.sshd_config文件。那麼如何修復它以使其與隱藏文件夾一起使用?

編輯/etc/passwd所以它也指向/home/.user

使用者有自己的主目錄。當您通過 ssh 登錄並成功建立連接時,使用者的會話將在他自己的主目錄中開始。如果目錄失去,您會收到錯誤。此外,如果您移動了 /home/user 目錄,它包含 .ssh 目錄,該目錄在authorized_keys文件中定義了您的公鑰。

您可以嘗試使用類似的東西將主目錄更改為“隱藏”目錄

usermod -d /home/.user user

這將使 ssh 讀取公鑰,並正確啟動會話。但是例如,“隱藏的”主目錄在/etc/passwd中仍然可見。

引用自:https://unix.stackexchange.com/questions/665393