Ssh

無法通過 SSH 連接到伺服器,因為 authorized_keys 位於不同的文件夾中

  • April 24, 2019

我之前能夠使用密碼驗證通過 SSH 連接到這個遠端伺服器。我想改變它,讓它使用私鑰/公鑰對。我按照必要的步驟生成密鑰對,編輯/etc/ssh/sshd_config文件以啟用 RSA 和 Pubkey 身份驗證,並禁用密碼身份驗證:

RSAAuthentication yes PubkeyAuthentication yes PasswordAuthentication no

問題是我(錯誤地)將authorized_keys文件移出~/.ssh/遠端主機的文件夾。因此,在退出遠端主機後,我無法通過 SSH 重新登錄,因為它無法辨識我的私鑰,並顯示以下消息: Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

我現在是否被永久鎖定在遠端伺服器之外?有沒有辦法authorized_keys在 SSH 命令本身中指定文件的位置?

不可以,您不能從連接端指定備用位置。這是故意的,也是 ssh 安全性的一部分。~/.ssh如果某些文件具有錯誤的文件權限(即其中儲存的許多文件),ssh 伺服器即使在正確的位置也不會使用它們。

如果您刪除了密碼驗證並重新啟動了 ssh 守護程序/服務,您將需要在本地解決伺服器上的 authorized_keys 文件的問題,或者將配置選項更改回允許密碼驗證並重新啟動 sshd。

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