Ubuntu

SSH-agent & SSH-add 重啟

  • June 19, 2011

情況:執行 Ubuntu 10.04。我有一個 bash 腳本,它是一堆文件夾,並通過 ssh 將它們複製到另一台主機。我已將公鑰複製到另一台主機,因此它不會提示輸入密碼。我執行eval ssh-agent(帶有額外引號)並ssh-add記憶體到密碼,之後我可以執行腳本而無需它隨時提示。到現在為止還挺好。

問題:我現在想在我自己的使用者下通過 cronjob 執行這個腳本(這只是一個測試設置)。但是當我重新啟動機器時,ssh-agent 失去了我通過 ssh-add 添加的密鑰,我必須再次執行 eval ssh-agent & ssh-add 才能使其正常工作。

問題: - 如何讓 ssh-agent 始終執行?(因為 cronjob 執行時不會有使用者登錄) - 如何將我的 rsa_id 永久保存到 ssh-add?

創建 ssh 密鑰時,您需要將密碼片語留空。這樣你就不需要使用 ssh-agent。顯然,該選擇存在安全隱患 - 但如果密鑰受到保護,ssh-agent 將始終要求您第一次輸入密碼。

從技術上講,您可能會使用expect將密碼片語從腳本傳遞給 ssh-agent - 但如果您準備將密碼片語放入腳本中,您也可以將其留空。

如果您遵循此路線,提高安全性的常用方法是只允許有問題的密鑰訪問另一台伺服器上專門設計/受限的帳戶。

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