Ubuntu

如何使用公鑰登錄遠端電腦,而無需該使用者在用於登錄的機器上?

  • November 22, 2011

我想從我的本地機器 umar 登錄遠端電腦,例如 10.10.10.5。遠端機器上的使用者是“coolapp”,所以我非常想做:ssh coolapp@10.10.10.5,不輸入密碼,而是使用公鑰登錄。問題是在我的本地機器上,我沒有使用者“coolapp”。我如何在遠端機器上登錄,而不必先在本地機器上創建使用者“coolapp”並為其生成 ssh 密鑰?

在本地機器上試試

ssh-copy-id coolapp@10.10.10.5

如果您沒有創建密鑰,那麼在ssh-copy-id您必須執行之前

ssh-keygen

然後

ssh coolapp@10.10.10.5

你在這裡混合了一些東西。您無需跨系統使用相同的使用者名即可登錄遠端系統。

確保將密鑰放在遠端伺服器(公共部分)和本地電腦(私有部分)上(並檢查權限)。然後你應該能夠登錄:

ssh coolapp@10.10.10.5    

無需輸入密碼(除非您有需要解鎖的鑰匙)。

你的私鑰應該在~/.ssh/id_rsa. 確保正確設置正確:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/id_rsa 

您的公眾應~/.ssh/authorized_keys享有並享有以下權利:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

最後,去檢查/etc/ssh/sshd_config是否允許使用密鑰。

引用自:https://serverfault.com/questions/333639