Linux

重新啟動使我失去了其他機器上的無密碼密鑰

  • September 10, 2012

當我重新啟動我的機器時(就像我今天所做的那樣),我似乎失去了一些功能,特別是我以前複製到其他允許我無需密碼登錄的機器的 ssh 密鑰似乎已經停止執行。

我嘗試通過生成新密鑰來替換密鑰,銷毀目前機器和遙控器上的 ~/.ssh/authorized_keys 中的舊密鑰,但沒有運氣。我還嘗試使用下面的命令將密鑰複製回來,但它似乎仍然不起作用。

ssh-copy-id <myusername>@<remoteserver>

任何想法都會有所幫助。

如果您已經加密了您的私鑰(通過在創建它時提供密碼),那麼您必須先對其進行解密,然後才能登錄遠端系統。您可能在本地系統上使用 ssh 代理來儲存未加密的密鑰。當您重新啟動時,密鑰會從代理的記憶體中清除。如果是這種情況,您將需要將密鑰重新添加到代理(使用 ssh-add 之類的東西),然後您應該能夠在不提供密碼或密碼片語的情況下登錄,假設公鑰已到位,權限和所有權正確等。

ssh-agent 是否正在執行取決於您的環境。我相信現在大多數桌面環境都在 ssh-agent 下執行桌面會話,因此 ssh-add 將“正常工作”。

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