如何使用 SSH 金鑰保護 GitHub 訪問

如何使用 SSH 金鑰保護 GitHub 訪問
Github 網頁前的 Github 吉祥物照片。

將 SSH 金鑰連結到 Github 是保護帳戶安全的關鍵步驟之一。它允許您利用公鑰加密的強大功能來保護您的 Git 儲存庫。本文將向您展示什麼是 SSH 金鑰以及如何使用它們來強化您的 Github 帳戶。

什麼是 SSH 金鑰?

簡而言之,SSH 金鑰是儲存在遠端伺服器上的公鑰。它們充當身份驗證代理,允許您連接電腦並與電腦交互,而無需提供使用者名稱和密碼。

顯示 SSH 公鑰範例的終端。

它的工作原理是,每當您透過 SSH 連接到電腦時,您的本機電腦都會發送一條由您的 SSH 私鑰簽署的訊息。然後,遠端電腦使用您的公共 SSH 金鑰來驗證訊息的真實性並讓您登入。

Github 使用相同的方法在其伺服器內驗證您的身分。每當您上傳和修改儲存庫時,網站都會使用您的公鑰。這可以確保您在推送提交時不會暴露您的 Github 憑證。

為 Github 產生 SSH 金鑰

首先,使用發行版的應用程式啟動器開啟一個新的終端機會話。

確保您已在電腦中安裝 OpenSSH 並且 SSH 代理守護程式目前正在執行:

執行下列指令啟動SSH 金鑰產生精靈:

精靈隨後將詢問您是否要為金鑰使用自訂 SSH 金鑰檔案名稱。按 Enter 接受預設名稱和位置。

顯示新 SSH 金鑰的檔案位置提示的終端。

輸入新 SSH 金鑰的密碼。每當您的本機電腦連接到您的 Github 帳戶時,這將作為您的本機電腦的密碼。

顯示新 SSH 金鑰密碼提示的終端。

將新產生的 SSH 金鑰新增至目前執行的 SSH 代理程式:

將 SSH 金鑰加入到 Github

新的 SSH 金鑰啟動並運行後,您現在可以將本機連結到您的 Github 帳戶。首先,執行以下命令來列印您的 SSH 公鑰:

反白顯示您的 SSH 公鑰,按右鍵單擊,然後選擇“複製”。

在其上下文選單提示中顯示“複製”選項的終端。

開啟新的瀏覽器會話,然後導覽至您的 Github 主頁。

點擊頁面右上角的個人資料圖示。

預設 Github 主頁的螢幕截圖。

從下拉清單中點選“設定”。

反白 Github 設定檔選單中「設定」選項的螢幕截圖。

選擇設定頁面左側邊欄的「SSH 和 GPG 金鑰」。

螢幕截圖突出顯示了 Github 設定選單中的 SSH 和 GPG 金鑰選項。

點擊“SSH Keys”標題旁的“New SSH Key”按鈕。

反白顯示 SSH 和 GPG 金鑰頁面內的「新 SSH 金鑰」按鈕的螢幕截圖。

選擇“標題”文字框,然後提供密鑰的名稱。

點選「金鑰」文字框,然後按 Ctrl + V 貼上您的 SSH 金鑰。

按一下「新增 SSH 金鑰」以提交新設定。

安全 Github 存取 Ssh 金鑰 09 新增 Ssh 金鑰按鈕

開啟一個新的終端機會話並執行以下命令:

輸入“yes”,然後按Enter

終端機突出顯示信任 SSH 指紋的提示。

這樣做將啟動一個與 Github 接收伺服器之一的新 SSH 會話。如果您的金鑰運作正常,這將列印一條短訊息,確認您的 SSH 連線。

終端機突出顯示來自 Github 的簡短確認訊息。

管理 SSH 金鑰

雖然單一 SSH 金鑰對於大多數使用者來說就足夠了,但在某些情況下您需要同步跨多台電腦託管的 Git 儲存庫。為此,您需要匯入電腦特定的 SSH 金鑰。

在要連結到 Github 的電腦上開啟一個新的終端會話。

確保 OpenSSH 守護程式已安裝並在系統中執行:

執行以下命令為您的新電腦建立不同的 SSH 金鑰:

為新的 SSH 金鑰輸入安全密碼,然後按Enter

將新的備用金鑰新增至 SSH 代理程式:

列印 SSH 公鑰的內容,然後將其複製到系統的剪貼簿:

返回您的 Github 帳戶的「SSH 和 GPG 金鑰」頁面。

再次點選“新 SSH 金鑰”按鈕。

為您的新金鑰提供唯一的標籤,然後將剪貼簿的內容貼到「金鑰」文字方塊下。

顯示 Github 中新替代密鑰的螢幕截圖。

按一下「新增 SSH 金鑰」以套用新設定。

透過 SSH 登入來測試您的新機器是否使用您的安全金鑰連線到 Github:

除了將新產生的金鑰傳送到 Github 之外,您還可以修改電腦中已有的現有 SSH 金鑰。如果您已經在 Linux 中使用 SSH 金鑰作為無密碼登入,這會很有用。

若要修改現有金鑰,請導覽至電腦的「.ssh」目錄:

使用 、 和 標誌運行 ssh-keygen 以及您的SSH密鑰。這將允許您更改現有私鑰的密碼:-p-o-f

您也可以使用 -c 標誌來變更公鑰中嵌入的電子郵件地址:

使用新更新的金鑰重新載入 SSH 代理程式:

從您的 Github 設定檔中替換相應的 SSH 公鑰。

顯示 Github 中新修改的 SSH 金鑰的螢幕截圖。

從 Github 中刪除 SSH 金鑰

開啟一個新的終端機會話,然後啟動 SSH 代理守護程式:

執行以下命令刪除機器內的 SSH 私鑰:

返回您的 Github 帳戶的「SSH 和 GPG 金鑰」類別。

捲動瀏覽此頁面上的 SSH 金鑰列表,然後按一下要刪除的金鑰上的「刪除」。

反白顯示新修改的 SSH 金鑰的「刪除」按鈕的螢幕截圖。

點擊“我明白,刪除此 SSH 金鑰”。

反白顯示刪除 SSH 金鑰的最終確認提示的螢幕截圖。

透過啟動與 Github 伺服器之一的 SSH 會話,確保舊的 SSH 金鑰現已失效:

連結 SSH 金鑰來保護您的 Github 帳戶只是了解公鑰加密和加密工作原理的第一步。透過使用 Rclone 建立加密雲端備份加密雲端備份,詳細了解靜態資料加密。

同時,您也可以透過使用 Git 掛鉤了解更多有關自動儲存庫管理的資訊。

圖片來源:Roman Synkevych,來自 Unsplash。所有修改和螢幕截圖均由 Ramces Red 進行。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *