如何使用 Windows 系統帳號(system) 執行 PuTTY

想要使用 Windows 排程,利用 PuTTY 以 System 身份透過金鑰的方式登入遠端 Linux 伺服器,但有時會有互動式詢問是否接受遠端主機的HostKey,而造成排程執行失敗。

可在 Script 裡面,於 PuTTY 執行前,將遠端主機的 HostKey 匯入 Registry,即可排除此詢問:
1. 先用 PuTTY 以互動方式接受遠端主機HostKey並正常登入。
2. 執行 Regedit。
3. 找到 HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\SshHostKeys。
4. SshHostKeys裡面會有字串值,應該像 rsa2@22:主機IP或名稱。
5. 在SshHostKeys上按右鍵,點匯出,匯出成 filename.reg 檔案,filename 自行取一個好認的名稱。
6. 在 Script 裡面,於 PuTTY 執行前,加入 regedit  /S  filename.reg。

這樣就不會於排程卡死在接受遠端主機的HostKey詢問中了。