在本教程中,您將學習如何使用 SSH 連接到 GitHub 並通過 GitHub 安全地傳輸數據。 SSH 或 Secure Shell 提供了一種連接到另一個客戶端/主機的安全方式。通過加密通過網絡發送的數據,提供額外的安全層。

使用 SSH 連接到 Github 的步驟

讓我們回顧一下在您的 Linux 機器上使用 SSH 連接到 Github 的步驟。

1. 生成 SSH 密鑰

檢查現有密鑰

要使用 ssh 連接到 GitHub,您需要本地計算機上的 SSH 密鑰。要檢查現有的 SSH 密鑰,請打開終端並輸入 ls 命令,如下所示:

ls -al ~/.ssh

如果 ssh 密鑰存在,它將列出 ssh 目錄中的文件。如果這些密鑰存在,您可以選擇使用現有密鑰。

但是,為不同的應用程序/連接創建不同的 ssh 密鑰始終被認為是安全的,因此如果一個密鑰被洩露,其他連接仍然是安全的。

因此,您可以創建新的 SSH 密鑰,也可以繼續執行將 SSH 密鑰添加到 SSH 代理的步驟。

生成新的 SSH 密鑰

打開終端並輸入 ssh-keygen 命令。

ssh-keygen -t ed25519 -C "<label>"

您可以使用標籤來標記您的 SSH 密鑰。 如果您創建此 ssh 密鑰對只是為了連接到 GitHub,請使用“” 格式為標籤。

如果您的系統不支持 Ed25519 算法,您可以改用 RSA 算法。

ssh-keygen -t rsa -b 4096 -C "<label>"

使用 RSA 加密, ssh-keygen 創建與教程中給出的文件名不同的文件名。要解決此問題,請更改提到的 SSH 文件名。

然後將提示您“輸入要保存密鑰的文件”。 您可以按 Enter 使用默認位置或指定您自己的文件位置。大多數程序會尋找 .ssh 作為密鑰,因此最好使用默認目錄。導航到默認目錄並按 Enter 鍵以避免將來發生衝突。

最後,系統會提示您輸入“安全密碼”。密碼短語為您的連接增加了第二層安全性,因此我們不建議將其留空。輸入並重新輸入您的密碼以進行確認。

生成的 SSH

2.添加到SSH代理

現在您有了一個 SSH 密鑰對,您可以將密鑰添加到您的 ssh-agent。 ssh-agent 是 SSH 的密鑰管理器。添加一個密鑰到 ssh-agent 避免多次輸入密碼。將我們的密鑰添加到 ssh-agent 讓我們開始吧 ssh-agent 在後台。

eval "$(ssh-agent -s)"
添加到 SSH 代理

現在您已經啟動了 ssh-agent,將您的密鑰對添加到 ssh。

ssh-add ~/.ssh/id_ed25519
添加到 SSH 代理

注意:如果您在創建密鑰時使用了不同的目錄/文件名,請將 ~/.ssh/id_ed25519 替換為您的密鑰的位置。

3. 將密鑰添加到您的 GitHub 帳戶

首先,您需要將 SSH 公鑰複製到剪貼板。 使用 xclip 從文件的內容中復制。

sudo apt-get install xclip
# If you are not on a Debian based distro, use package manager of your choice( eg. Pacman or yum) 

xclip -selection clipboard < ~/.ssh/id_ed25519.pub

注意:如果您在創建密鑰時使用了不同的目錄/文件名,請將 ~/.ssh/id_ed25519 替換為您的密鑰的位置。 如果 xclip 不起作用,您可以使用任何文本編輯器從 ssh 密鑰文件中復制它。不要添加換行符或空格。

打開你的 GitHub 密鑰設置,[新しい SSH キー]選擇。

GitHub SSH

將剪貼板的內容粘貼到密鑰下方,並使用標題表單字段來命名密鑰。

ssh 形式

您將被重定向以輸入您的密碼。驗證後,您將看到 ssh 密鑰已添加到您的 GitHub 帳戶中。 您現在可以使用 SSH 連接到 GitHub。 您還可以重新配置本地存儲庫以使用 SSH。

添加 SSH

4. 使用 SSH 克隆存儲庫

導航到要克隆的 GitHub 存儲庫。[コードのダウンロード]單擊按鈕並選擇 ssh 選項。

git ssh

複製命令並將其粘貼到終端中。應使用 ssh 克隆存儲庫。 git 命令還使用 ssh 進行遠程連接。

git clone [email protected]:crstnbr/MonteCarlo.jl.git
Github SSH 出

結論是

現在您已準備好使用安全連接連接到 GitHub。向上游發送到 Github 的數據經過加密,使其更加安全。