GIT為什么要配置公鑰和私鑰

為什么要配置公鑰和私鑰:

Git使用https協(xié)議,每次pull, push都要輸入密碼,相當(dāng)?shù)臒?br> 使用git協(xié)議,然后使用ssh密鑰。這樣可以省去每次都輸密碼。

公鑰我們一般是給服務(wù)器的,他們到時(shí)候在權(quán)限中加入我給的公鑰,然后當(dāng)我從遠(yuǎn)地倉庫中下載項(xiàng)目的時(shí)候,我在git clone xxx的時(shí)候,那個(gè)服務(wù)器我通過他的綁定的公鑰來匹配我的私鑰,這個(gè)時(shí)候,如果匹配,則就可以正常下載,如果不匹配,則失敗.

大多數(shù) Git 服務(wù)器都會(huì)選擇使用 SSH 公鑰來進(jìn)行授權(quán)。系統(tǒng)中的每個(gè)用戶都必須提供一個(gè)公鑰用于授權(quán),沒有的話就要生成一個(gè)。

配置SSH keys

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/#platform-mac

生成SSH Keys

  1. 打開終端

  2. 輸入命令

    $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
    
    $ # 告訴你已經(jīng)生成了公交和私鑰
    $ Generating public/private rsa key pair. 
    
    $ # 讓你輸入一個(gè)名字來保存內(nèi)容,不用管,直接回車
    $ Enter file in which to save the key (/Users/lidaze/.ssh/id_rsa):  
    
    # 輸入一次密碼
    Enter passphrase (empty for no passphrase): 
    # 再輸入一次密碼
    Enter same passphrase again: 
    
    # 你的私鑰已經(jīng)保存在 /Users/lidaze/.ssh/id_rsa.
    Your identification has been saved in /Users/lidaze/.ssh/id_rsa.
    # 你的公鑰已經(jīng)保存在 /Users/lidaze/.ssh/id_rsa.pub.
    Your public key has been saved in /Users/lidaze/.ssh/id_rsa.pub.
    

檢查SSH Keys

  1. 打開終端

  2. 輸入命令

    # 顯示出在.ssh文件下的文件,如果存在的話
    $ ls -al ~/.ssh
    
  3. 檢查是否存在以下文件

    • github_rsa
    • github_rsa.pub
    • id_rsa
    • id_rsa.pub
    • known_hosts
  4. 如果不存在以上文件,則需要重新生成

添加SSH Keys到github賬戶中

  1. 拷貝公鑰

    # 拷貝~/.ssh/id_rsa.pub文件內(nèi)容到剪貼板
    $ pbcopy < ~/.ssh/id_rsa.pub
    

    粘貼出來內(nèi)容如下:

    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC019j/q2jJDqdargVVIUyLeKnTRua69RAPmAP1nSfoPe5kVmxu/5UqWIjU9gGAgxT+DOUGK6GJrQAutAI2bZ7sEl1PZ/deUcIUGl6hyyECo6u7uNe+TmoyrSMn08PgD1L+UtBQPOZAwRTmlxJ7y+tjG2Q0M7n/g6b0rtxkoFg24qhOPhWbuESgZT6jF6iSEFeBa0U7YTLqzCGLwSN8KwbJuGH+u/fNnu3v1gs78IOvqtjqqUO0rxXFp4TcoIuQInx5E2bQcqeFdwg4dKaceH+WRQFGSDShAE39vI+e+LH0EbxZVOVyzqnu/gSxEs1A3VyRVrgFk8msKGfwS/GeB/iwh9f8FFFhFPpC5ie674KjSAnBvsxAN0non+UuhHQWvjwhmXxJDVQoiIXvjwmMlrBF484GZpwdTBzuHWz/aK8RdwMRxKmb8cZ8X1UfvwYBRf4kR6iJDjCYz/33f/gD/AVTuMkgqdXJxrrqaBFvYLP6yH97csAS6/pukWRAhPPwrSj6Su+/ZKq4UjW4fThEg8cbKNOvEeuUmJXArVaeM8mYFobiUjylOKmwmjEMAdq3+ps8icNHYjf0IS1enExkkTHMqrtqIlI0ptMqSG4wyRhGj9cGjH1D6curi1C+GwJiQ9P8jBksXDW5a/a7CIGiyn5UQdZ3reEXQZ0g91pB4o9iZCQ== mail@lidaze.com
    
  2. 依次打開Github網(wǎng)站 -> Settings -> SSH And GPG Keys

  3. 點(diǎn)擊New SSH Key按鈕

  4. 添加TitleKey

    • Title: 隨便輸入即可,如果是我自己的電腦,則可以輸入lidaze macbook
    • Key: 粘貼即可
  5. 重新輸入Github的密碼即可

測(cè)試SSH的連接

  1. 打開終端

  2. 輸入命令

    $ ssh -T git@github.com
    
    $ # 輸入一遍密碼
    $ Enter passphrase for key '/Users/lidaze/.ssh/id_rsa': 
    
    $ # 看到這樣的內(nèi)容,就代表成功啦
    $ Hi lidaze! You've successfully authenticated, but GitHub does not provide shell access.
    

    ?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容