2010-09-29 52 views
142

我使用puttygen生成OpenSSH私鑰(並以OpenSSH格式導出它)。我怎樣才能在這個現有的密鑰(我知道如何生成一個新的密碼與密碼)的密碼?如何將密碼添加到未經密碼生成的OpenSSH私鑰?

+12

如果您看到此評論,請將其中一個答案標記爲已接受或寫下評論,說明他們錯過了什麼。謝謝! – 2011-11-18 22:26:03

+0

添加和更改或刪除相同:http://stackoverflow.com/questions/112396/how-do-i-remove-the-passphrase-for-the-ssh-key-without-having-to-create-一個新的科,可能相同的變化:http://serverfault.com/questions/50775/how-do-i-change-my-private-key-passphrase – 2015-04-02 08:04:34

+0

如果你得到***'壞密碼短語* * **在'id_ed25519'鍵上,但密碼是正確的,那麼你可能使用低級的'ssh-keygen'來管理它。 – jww 2015-08-27 22:07:00

回答

227

嘗試命令ssh-keygen -p -f keyfile

從SSH-keygen手冊頁

-p  Requests changing the passphrase of a private key file instead of 
     creating a new private key. The program will prompt for the file 
     containing the private key, for the old passphrase, and twice for 
     the new passphrase. 

-f filename 
     Specifies the filename of the key file. 

例子:

ssh-keygen -p -f ~/.ssh/id_rsa 
+4

對於那些想知道什麼-f是:它指定輸入文件。 – Neikos 2015-12-11 10:49:14

+1

//,@sigjuice,請你舉個例子,比如'$ ssh-keygen -p -f/Users/sigjuice/.ssh/id_rsa'?這可能會幫助那些不知道如何區分公鑰和私鑰之間的差異,並幫助他們更快地弄溼腳的人。 – 2016-07-06 18:48:52

25

使用-p選項到ssh-凱基。這允許您更改密碼而不是生成新密鑰。

更改密碼sigjuice顯示:

ssh-keygen -p -f ~/.ssh/id_rsa 

所需的密碼將成爲新的密碼。 (這是假設你已經添加了公鑰~/.ssh/id_rsa.pub您的authorized_keys文件。)測試使用SSH

ssh -i ~/.ssh/id_rsa localhost 

你可以有不同的用途,不同名稱的多個按鍵。

+0

//,請您舉例說明一下,以及如何檢查該選項是否有效,@BillThor? – 2016-07-06 18:49:24

+1

@NathanBasanese查看編輯的回覆。 – BillThor 2016-07-06 19:47:21