Ssh
發布 id_rsa.pub 以便更輕鬆地設置新環境?
為了在新機器和新環境上更容易設置無密碼 SSH,是否有任何理由
id_rsa.pub
無法在網路上的某個地方發布文件(只是密鑰對的公共部分)?例如在 dotfiles GitHub 儲存庫中。我知道:
id_rsa
必須仔細保護文件(密鑰對的私有部分)並且- 密鑰對應使用密碼保護
但是我的搜尋沒有發現任何明確的建議,表明這是允許或鼓勵的。
出於好奇,同樣的建議是否適用於沒有密碼的密鑰對?
RSA 專門設計用於允許您共享該公鑰,所以是的,您可以發布它。這與帶有 RSA 證書的 x.509(和 SSL)的工作方式非常相似。
在發布文件之前,實際看一下;唯一需要在那裡的是關鍵字“ssh-rsa”和base64編碼的密鑰。您可能希望保持這種狀態(我相信這是現在的預設設置)。
無論密鑰是否具有密碼片語都是如此。密碼對私鑰進行加密,不會影響公鑰。
與往常一樣,確保您的密鑰足夠熵且足夠大。如果它是由損壞的 PRNG 生成的,它可能是可以預測的。但是,發布它並不會帶來太多額外的風險,因為如果密鑰空間很小,攻擊者可以簡單地嘗試使用列舉密鑰空間中的所有密鑰,直到他們得到正確的密鑰。
我建議使用 4096 位密鑰(請指定
-b 4096
),這樣別人將您的公鑰轉換為私鑰會比平時更困難(預設值為 2048)。這是這樣做的唯一重大風險,而且它不是一個很大的風險,因為該算法是專門為使其不切實際而設計的。