Ssh
無法通過 SSH 連接到伺服器,因為 authorized_keys 位於不同的文件夾中
我之前能夠使用密碼驗證通過 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。