簡體   English   中英

可以使用一個SSH密鑰推送到不同的Git遙控器嗎?

[英]Can one single SSH key be used to push to different Git remotes?

通常,我生成不同的SSH密鑰以推送到多個Git服務器。

今天,我的同事告訴我,他使用相同的id_rsa.pub文件推送到GitHub和我們的LAN GitLab服務器。

可以使用一個SSH密鑰推送到不同的Git遙控器嗎?

我們必須為不同的遠程服務器生成多個SSH密鑰的原因是什么?

要解決您的兩個問題:

Q1。 可以使用一個SSH密鑰推送到不同的Git遙控器嗎?

是的,假設您在所有開發工作站上使用了一個id_rsa.pub或其他名稱的公鑰以及您的私鑰,那么只需將一個公鑰上傳到多個Git主機就可以獲得與當前獲得的相同的訪問權限從多個鍵。

這也將使您的生產生活更輕松,無需管理多個密鑰,並確保每次與服務器通信時都與正確的密鑰連接。

如果您使用多個工作站(即家庭和辦公室),您也可以選擇在每個本地工作站上使用相同的公鑰/私鑰對。 這進一步減少了您需要跟蹤的不同鍵的數量。

Q2。 我們為不同的遠程服務器生成多個SSH密鑰的目的是什么?

沒有必要為多個遠程Git存儲庫服務器生成多個密鑰,如第一個問題的答案所示。

正如Jan Hudec所提到的那樣,人們可能會選擇為不同的Git存儲庫使用不同的密鑰,這將是一個額外的安全或管理控制層。

有關在Git上使用SSH的更多信息,請訪問BitbucketGitHub

是的,只要每個服務器都有一個公鑰副本,就可以為多個服務器使用相同的公共/私有ssh密鑰對。

在ssh中,私鑰是客戶端上的私鑰,您將公鑰推送到要登錄的服務器。

通常,您會為某些腳本中使用的每個無密碼短語生成單獨的密鑰,以便在密鑰被盜時將損壞降至最低。

但我認為沒有任何充分理由為手動使用生成多個身份。 涉及我手動使用的所有內容始終使用相同的密碼短語保護的id_rsa ,通常在ssh-agent中解鎖。

您也可以出於類似的原因使用單獨的密鑰,但除非您使用不同的密碼保護每個密鑰,否則沒有必要,因為所有私鑰都存在於同一磁盤上的同一目錄中。

當然,在不同的工作站上,你肯定應該擁有不同的私鑰,但它將再次用於從該機器完成的所有工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM