生成和添加 SSH 公鑰
生成
-
打開 Terminal(終端)
-
生成命令
ssh-keygen -t ed25519 -C "your_email@example.com"
note:如果您使用的是不支持 Ed25519 算法的舊系統,請使用 RSA,感興趣的可以點擊Ed25519 和 RSA 詳情入口了解;
-
參數解釋:
- -t: 指定使用的數字簽名算法;
- -C: 注釋,隨便填;
- -f: 指定文件輸出位置,可選默認為 ~/.ssh/
-
輸出日志(三次回車)
Generating public/private ed25519 key pair. Enter file in which to save the key (/home/noname/.ssh/id_ed25519): # 按回車鍵, 接受默認文件位置 Enter passphrase (empty for no passphrase): # 按回車鍵, 設置空密碼 Enter same passphrase again: # 按回車鍵 Your identification has been saved in /home/noname/.ssh/id_ed25519 Your public key has been saved in /home/noname/.ssh/id_ed25519.pub The key fingerprint is: SHA256:3tUVjse1MusYmzxShrReusMp2Rdd2NSTGSi3dBOujHA librarookie The key's randomart image is: +--[ED25519 256]--+ | .+B| | . +=B=| | o E++**+| | . = o+*+ | | So *o+o | | ...*o*. | | =+o*.. | | o =o.. | | ..o | +----[SHA256]-----+
-
-
查看生成的 SSH keys
-
查看公鑰
# 不出意外,~/.ssh/目錄下應該有了 id_ed25519和 id_ed25519.pub # 我們打開 id_ed25519.pub cat ~/.ssh/id_ed25519.pub # 然后就可以看到公鑰內容了(一串字符串)
-
添加識別 SSH keys 新的私鑰(可選,沒識別到執行此步)
ssh-agent bash ssh-add ~/.ssh/id_ed25519
note: 默認只讀取 id_rsa,為了讓 SSH 識別新的私鑰,需要將新的私鑰加入到 ssh-agent 中
-
添加
- Gitee公鑰管理頁面: https://gitee.com/profile/sshkeys
- GitHub公鑰管理頁面: https://github.com/settings/keys
-
進入GitHub 或Gitee平台並打開設置
-
選擇 SSH公鑰
-
填寫標題和公鑰(id_ed25519.pub內容)
-
輸入密碼
驗證
打開Git Bash並輸入
-
驗證命令
ssh -T git@github.com # github ssh -T git@gitee.com # gitee
-
成功輸出
# GitHub You've successfully authenticated, but GitHub does not provide shell access. # Gitee You've successfully authenticated, but GITEE.COM does not provide shell access.
Ref