关于Github如何创建公钥 SSH key

本文详细介绍了SSH密钥的创建过程,包括如何在本地生成SSH密钥、将公钥上传到GitHub以及验证配置是否成功的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SSH key 的创建

这里写图片描述

关于SSH

SSH协议,可以连接和验证远程服务器和服务。使用SSH密钥,可以连接到GitHub,而无需在每次访问时提供用户名或密码。

命令行:

  1. 在Git bash内执行:
cd ~/.ssh

如果返回No such file or directory那就说明没有生成过SSH key,直接进入第3步
这里写图片描述

2.如果没有出现上面的情况说明你之前已经生成过SSH key, 输入ls -al ~/.ssh查看现有的密钥是否存在
这里写图片描述
默认情况下,公钥的文件名是id_rsa.pub,看看你自己是否有。

3.生成新的SSH key:(引号内的邮箱替换成你们自己的邮箱)。

ssh-keygen  -t   rsa   -C  "swordsmanye@gmail.com"

运行后的结果:

$ ssh-keygen -t rsa -C "swordsmanye@gmail.com"
Generating public/private rsa key pair.  
Enter file in which to save the key 
(/Users/your_user_directory/.ssh/id_rsa):    按回车键  
Enter passphrase  (empty for no passphrase):   输入密码,自己容易记住的   
Enter same passphrase again:   再次输入密码    

4.输入~/.ssh就能看到生成的文件所在的地方,在文件目录下会得到 id_rsaid_rsa.pub两个文件,id_rsa.pub文件里存放的就是我们要使用的key.

5.上传key到github:

1.ctrl+A全选,复制key到剪贴板
2.登录到github
3.点击右上方的头像,选择settings
4.选择SSH key选项
5.点击Add SSH key,把剪贴板的内容复制到里面,确定即可

6.测试是否配置成功

ssh -T git@github.com

配置成功标志

Hi username!You've successfully authenticated,but Gitub does not provide shell access 

参考资料

### 解决 GitHub 创建 SSH 密钥失败的问题 当面临在 GitHub创建 SSH 密钥失败的情况时,可以按照以下方法排查并解决问题。 #### 1. 检查命令执行环境 确保是在支持的终端环境中操作。对于 Windows 用户来说,推荐使用 Git Bash 或者 PowerShell;Mac 和 Linux 则可以直接通过自带的 Terminal 来完成这些指令[^3]。 #### 2. 安装必要的工具 确认已经安装了 OpenSSH 工具集。可以通过运行 `ssh -V` 命令来验证是否已正确安装以及查看版本号。如果没有安装,则需先下载并安装适合系统的最新稳定版 OpenSSH 软件包。 #### 3. 正确生成 SSH 密钥对 使用如下命令生成新的 SSH 密钥对: ```bash ssh-keygen -t ed25519 -C "your_email@example.com" ``` 如果设备不支持 Ed25519 算法,可改用 RSA 方式: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 上述命令中的 `-C` 参数用于指定关联邮箱地址,在后续识别身份时会有所帮助。注意保存好私钥文件,默认路径通常为 ~/.ssh/id_ed25519 或 ~/.ssh/id_rsa,并设置安全权限防止泄露。 #### 4. 添加新生成的 SSH 私钥至本地代理服务 启动 SSH Agent 并加载刚刚产生的私钥: ```bash eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_ed25519 # 如果是RSA则改为id_rsa ``` 这一步骤能够使计算机记住当前登录状态下的私钥信息,从而简化之后的操作流程。 #### 5. 将公钥添加到 GitHub 账户中 复制公钥的内容(一般位于~/.ssh/id_ed25519.pub),然后前往 GitHub 的个人资料页面 -> Settings -> SSH and GPG keys -> New SSH key 进行粘贴提交[^2]。 #### 6. 测试连接有效性 最后测试与服务器之间的通信状况: ```bash ssh -T git@github.com ``` 成功的话应该收到一条欢迎消息表示认证无误;如果有任何错误提示,请仔细阅读报错内容以便进一步诊断问题所在[^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值