除非我先在伺服器上本地登錄,否則無法 ssh 進入遠端伺服器

除非我先在伺服器上本地登錄,否則無法 ssh 進入遠端伺服器

我已經在舊桌面上設定了 ubuntu 伺服器,並且能夠使用密碼登錄,沒有問題。然後我設定了 ssh 金鑰並禁止使用密碼登入。我現在遇到了一個奇怪的問題,當嘗試遠端ssh 時,我收到公鑰被拒絕的錯誤,除非我將顯示器連接到舊桌面並在本地登入伺服器,然後使用密鑰遠端登入伺服器- 這有效。

我檢查了兩台機器上 .ssh 檔案/資料夾的權限,它們都很好:主目錄為 755,.ssh 為 700,id_rsa.pub 為 644,id_rsa 和授權金鑰為 600。

知道這是怎麼回事嗎?

答案1

答案正如米哈爾·波利托夫斯基在評論中所說。加密的主目錄包含 .ssh 資料夾,因此在我本地登入並解密該資料夾之前,ssh 命令無法存取它。解決方案是建立 /home/ssh/%user%/ 並將authorized_keys 檔案放在那裡,然後指示 ssh 透過 sshd_config 查看那裡。請參閱評論以獲取有用網頁的連結。

答案2

這是網路適配器。它被配置為僅可供您的使用者使用。

您必須將網路介面卡設定為可供其他/所有使用者使用。在 GNOME 中,這是透過網路介面卡設定中的「可供其他使用者使用」複選框來完成的。

如果沒有這個,您的用戶將需要先在本地登錄,然後網路適配器開始偵聽 SSH 等標準服務。

相關內容