1. 程式人生 > >程式碼管理--Git提交程式碼免輸入密碼

程式碼管理--Git提交程式碼免輸入密碼

背景: 最近使用了BitBucket作為遠端倉庫管理程式碼,因每次push程式碼的時候都需要輸入賬號密碼,它們提供了SSH協議使push程式碼不需要再輸入賬號密碼。 如何使用: Mac只需要在~/.ssh生成私鑰和公鑰,然後將你的公鑰上傳到BitBucket。另外,如果有要求輸入SSH的id_rsa的密碼的對話方塊,直接輸入空即可。 生成SSH Key: 1、終端輸入:ssh-keygen 2、詢問你生成的Key儲存在哪裡,直接Enter,預設會儲存在~/.ssh/; 3、詢問輸入passphrase,還是直接Enter; 4、生成成功之後使用vim檢視該id_rsa.pub,複製裡面內容貼上到GitHub/BitBucket;

科普 SSH 為 Secure Shell 的縮寫,由 IETF 的網路工作小組(Network Working Group)所制定;SSH 為建立在應用層和傳輸層基礎上的安全協議。SSH 是目前較可靠,專為遠端登入會話和其他網路服務提供安全性的協議。利用 SSH 協議可以有效防止遠端管理過程中的資訊洩露問題。SSH最初是UNIX系統上的一個程式,後來又迅速擴充套件到其他操作平臺。SSH在正確使用時可彌補網路中的漏洞。SSH客戶端適用於多種平臺。幾乎所有UNIX平臺—包括HP-UXLinuxAIXSolarisDigitalUNIXIrix,以及其他平臺,都可執行SSH。
從客戶端來看,SSH提供兩種級別的安全驗證。 第一種級別(基於口令的安全驗證) 只要你知道自己帳號和口令,就可以登入到遠端主機。所有傳輸的資料都會被加密,但是不能保證你正在連線的伺服器就是你想連線的伺服器。可能會有別的伺服器在冒充真正的伺服器,也就是受到“中間人”這種方式的攻擊。 第二種級別(基於密匙的安全驗證) 需要依靠密匙,也就是你必須為自己建立一對密匙,並把公用密匙放在需要訪問的伺服器上。如果你要連線到SSH伺服器上,客戶端軟體就會向伺服器發出請求,請求用你的密匙進行安全驗證。伺服器收到請求之後,先在該伺服器上你的主目錄下尋找你的公用密匙,然後把它和你傳送過來的公用密匙進行比較。如果兩個密匙一致,伺服器就用公用密匙加密“質詢”(challenge)並把它傳送給客戶端軟體。客戶端軟體收到“質詢”之後就可以用你的私人密匙解密再把它傳送給伺服器。 用這種方式,你必須知道自己密匙的
口令
。但是,與第一種級別相比,第二種級別不需要在網路上傳送口令。 第二種級別不僅加密所有傳送的資料,而且“中間人”這種攻擊方式也是不可能的(因為他沒有你的私人密匙)。但是整個登入的過程可能需要10秒。 我們使用的就是第二種安全級別。