--- GA: G-7GF24SD6DM --- # Github×Linux使用筆記:Linux產生證書登錄Github,以便拉取、推送儲存庫 :::warning :warning: **注意** 筆記將移往AnyType平台,此存檔可能不是最新版本。 ::: ## 前言 筆記用,順便提供給後人參考。 我自己也可以參考😶 ## Linux主機 ![](https://hackmd.io/_uploads/SJYOCiCJa.png) 使用Kali Linux進行範例。 ## Step1. 在Linux上生成SSH私鑰與公鑰 1. ``` ssh-keygen -t rsa -b 4096 -C "you_can_add_your_username" ``` ssh-keygen -t *指令* -b *密鑰長度* -C *"註釋"* ,為防洩漏已去識別化。 ![](https://hackmd.io/_uploads/r1TYisC1p.png) `Enter file in which to save the key(/home/kali/.ssh/id_rsa): `*此處可自訂欲儲存位置資料夾* `Enter passphrase (empty for no passphrase): ` *自訂通關密鑰,可留空* `Enter same passphrase again: ` *再次輸入通關密鑰* `Your identification has been saved in ...` 輸出的私鑰位址。 `Your public key has been saved in ....pub` 輸出的公鑰位址。請將此記住。 `The key fingerprint is: ` 指紋 2. 前往該輸出資料夾。 `cd PATH` cd切換目錄至該輸出資料夾 `ls -l` ls輸出該資料夾檔案清單 ![](https://hackmd.io/_uploads/SJpI6jAyp.png) 3. 獲得公鑰內容。 `cat PATH.pub` cat查看純文字檔案內容 ![](https://hackmd.io/_uploads/SyPEynRya.png) 4. 將上面公鑰內容,複製起來備用。 ## Step2. 進入[GitHub](https://www.github.com)網站進行設定 1. 可以開始進入到您的儲存庫 ![](https://hackmd.io/_uploads/rkkLx3Rya.png) 2. 儲存庫的設定(Setting), ![](https://hackmd.io/_uploads/ryjJZ2Ckp.png) ![](https://hackmd.io/_uploads/rJp4W301a.png) 3. 開始新增 ![](https://hackmd.io/_uploads/rJBGfnRJ6.png) ![](https://hackmd.io/_uploads/BkfrGhAJa.png) 自訂需求,看你想怎填就怎填吧。 `Title` 標題,可以自訂,以便於辨識使用狀況。 `Key` 部分,需使用剛剛前面輸出的 `id_rsa.pub` 該份內容。 `Allow write access` 視情形有無需要寫入權限自行勾選。 4. 新增完成存檔,查看證書使用狀況。 ![](https://hackmd.io/_uploads/Hye9VhA1a.png) 主要新增完成後,前面的鑰匙為白色未使用過,使用後會變成綠色。 `Added on ... by username` 提示將證書新增的時間與帳號。 `Last used within ...` 提示上次該證書的使用時間。 `Read/white` 提示證書權限,此為可讀可寫。 ## P.s. Git × Linux小筆記 Q1、 我做好證書了,也能Pull拉回儲存庫,在Push推送時發生「致命錯誤,我的版本庫未找到」 A1、 檢查Remote URL是SSH還是HTTP連線。請以SSH連線為主即可。 指令更改方式:`git remote set-url origin YOUR_SSH_REPO_URL` ----- Copyright ChanYuRick 2024. [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)