Ssh

無需註釋即可跟踪 SSH 私鑰

  • February 21, 2016

SSH 公鑰支持註釋(僅包含附加到密鑰末尾的文本),這使得辨識其他無法辨識的 id_rsa.pub 文件變得容易。您可以使用註釋來儲存資訊,例如密鑰屬於誰、創建時間以及用於什麼機器。

私鑰似乎缺少此功能。ssh-keygen -C comment將生成一個帶有附加到公鑰的註釋的密鑰對,但私鑰將保持未註釋狀態。ssh-keygen有一個-c論點是“請求更改私鑰和公鑰文件中的註釋”,但是

root@kitsune:~# ssh-keygen -c -f id_rsa
Comments are only supported for RSA1 keys.

所以看起來 SSH2 私鑰格式沒有註釋欄位。只要將一對密鑰放在一起並放在正確的位置,這通常很好,但是文件可以被複製和移動(當帳戶/機器共享密鑰時可能發生這種情況)或被意外覆蓋,並且它們都有相同的名稱(id_rsa),所以人們可能會忘記哪個鍵是哪個。在沒有評論的情況下,保持私鑰井井有條的最佳做法是什麼?

使用公共密鑰儲存私鑰使您有機會使用以下命令查看儲存在公共部分中的評論,但我發現這不是您想要的。無法在密鑰本身中儲存註釋(正如您已經提到的)。

$ ssh-keygen -lf ~/.ssh/id_rsa
2048 SHA256:abcdef[...] [comment] (RSA)

文件可以被複製和移動

這真是個壞主意。您不希望您的私人數據四處移動。在理想情況下,每台連接的設備都應該有一個密鑰對。如果您需要客戶端上的更多密鑰,我會使用不同的命名,例如id_rsa-private-github(使用適當的公共部分命名)。在~/.ssh/config和/或中進行正確配置後ssh-agent,此設置沒有缺陷。

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