Git - 生成 SSH 金鑰



使用者透過使用 SSH 公鑰來驗證 Git 伺服器身份,如果他們還沒有 SSH 公鑰,則需要生成一個。

  • 在所有作業系統上,SSH 金鑰的生成方式相同。

  • 使用者需要確保在生成新的金鑰之前已經擁有一個金鑰。

  • 使用者的 **~/.ssh** 目錄預設包含 SSH 金鑰。

使用以下命令列出 **~/.ssh** 目錄的內容,並檢查您是否已擁有 SSH 金鑰:

$ cd ~/.ssh
$ ls
authorized_keys2  id_dsa       known_hosts
config            id_dsa.pub

要使用 Git 服務生成 SSH 金鑰以進行安全身份驗證,您需要按照以下步驟操作:

1. 開啟終端

在您各自的作業系統上開啟終端,例如 Windows 上的 Git Bash。

2. 生成 SSH 金鑰

要使用 RSA(推薦)生成新的 SSH 金鑰對,金鑰大小為 4096 位,請執行以下命令:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  • **-t rsa** - 指定要建立的金鑰型別 (RSA)。

  • **-b 4096** - 指定位數,其中 4096 用於強加密。

  • **-C "your_email@example.com"** - 指定與 SSH 金鑰關聯並用於識別的電子郵件 ID。

3. 指定位置

為了儲存金鑰,系統會要求您指定位置。您可以指定所需位置,也可以按 Enter 鍵接受提供的預設位置 **~/.ssh/id_rsa**。

Enter file in which to save the key (/home/your_user/.ssh/id_rsa):

4. 設定密碼短語(可選)

也可以新增密碼短語,雖然是可選的,但它增加了額外的安全層。此步驟甚至可以跳過。

Enter passphrase (empty for no passphrase):

5. 檢視生成的 SSH 金鑰

按照上述步驟操作後,您的 SSH 金鑰對將被建立。您將有兩個檔案,一個用於私鑰,另一個用於公鑰。

  • **私鑰** - 您需要妥善保管此檔案,不要共享它 **~/.ssh/id_rsa**

  • **公鑰** - 您需要與服務共享此檔案 **~/.ssh/id_rsa.pub**

6. 將 SSH 金鑰新增到 SSH 代理

為了確保 SSH 金鑰可用於 Git 服務,您需要將其新增到 SSH 代理。

  • 啟動代理。

    eval "$(ssh-agent -s)"
  • 新增您的金鑰。

    ssh-add ~/.ssh/id_rsa

7. 複製公鑰

將公鑰檔案 **id_rsa.pub** 的內容新增到您的 Git 服務(GitHub、GitLab、BitBucket 等)。您可以使用以下命令顯示公鑰:

cat ~/.ssh/id_rsa.pub

選擇並複製要新增到 Git 服務的輸出。實際的公鑰內容是一長串字元 (AAAAB3NzaC1yc2EAAAABIwAAAQEA2kLx2K5DwsUgrA8WqA+zm4e5+JY1ZqD0Gi?.......)。

8. 將 SSH 金鑰新增到 Git 服務

GitHub

要將 SSH 金鑰新增到 GitHub,請轉到 **設定 > SSH 和 GPG 金鑰,然後單擊“新建 SSH 金鑰”。**

GitLab

要將 SSH 金鑰新增到 GitLab,請轉到 **個人資料設定 > SSH 金鑰,然後貼上公鑰。**

BitBucket

要將 SSH 金鑰新增到 BitBucket,請轉到 **個人設定 > SSH 金鑰,然後新增新金鑰。**

將金鑰新增到您的 Git 服務後,您可以使用 SSH 克隆、推送和拉取儲存庫。

廣告
© . All rights reserved.