github SSH 生成和使用(详细)

通过ssh连接github,可以有效的提升安全性
设置完成后,可以直接用git上传项目了,非常方便

1.设置位置

在这里插入图片描述

2.生成ssh密钥(windows)

打开git bash,输入以下命名,把your_email@example.com换成自己的github账号

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

如果这里直接按回车,就会生成在默认的地方,如果已经生成过了,就会覆盖
在这里插入图片描述
如果要保存到d:/.ssh/github_rsa,在此输入(注意:文件夹必须存在)

/d/.ssh/github_rsa

提示增加证书的密钥,可以回车不加,是对证书的再次加密,建议使用
在这里插入图片描述

3.添加到ssh-agent

以下操作在git bash里面运行
检查ssh-agent是否运行,显示pid说明正常

eval "$(ssh-agent -s)"

添加ssh证书(路径是上面写的),并输入证书密码(如果有)
如果你保存到其他地方,将下面的地址替换,这里的/d代表的是d盘

ssh-add /d/.ssh/github_rsa

4.将公钥复制并保存

用记事本打开.pub(或者会显示PUB file的类型),内容复制后粘贴到github
在这里插入图片描述

会提示输入github密码并确认

在这里插入图片描述

5.测试能否连接

注意,这里不要替换为自己的邮箱

ssh -T git@github.com

注意:网络不好可能导致无法连接,建议先解决网络问题
国内是可以直接访问github的,清理dns通常就能解决

6.设定git信息

提交时会显示这样的名称

git config --global user.name "username"
git config --global user.email "email"

7.项目配置

目录用/分开,比如c://aaa/aaa目录

cd /c/aaa/aaa

git 初始化

git init

添加(从github的code中可以查看地址)

git remote add origin git@github.com:yourName/repositoryname.git
或
git remote add origin https://github.com/yourName/repositoryname.git

然后可以克隆项目修改了

<think>好的,用户想在Linux系统上生成用于GitHubSSH密钥。我需要根据提供的引用信息来整理步骤。首先,引用[2]提到检查现有的SSH密钥,如果存在id_rsa.pub或id_dsa.pub,可以直接进入添加步骤,否则需要生成新的密钥。用户可能不知道如何检查现有密钥,所以第一步应该是指导他们使用ls命令查看~/.ssh目录下的文件。 接下来,如果没有找到密钥,用户需要生成新的。引用[2]引用[4]都提到了使用ssh-keygen命令,这里需要详细说明命令的参数,比如-t指定类型,-C添加注释。用户可能需要设置密码,所以需要解释passphrase的作用,并说明如何跳过设置(直接回车)。 生成成功后,需要将公钥添加到GitHub账户。引用[1]提到使用Github CLI,但用户可能更熟悉手动操作,所以应该包括用cat命令显示公钥内容,并复制到剪贴板的步骤。同时,提供GitHub网页上的具体路径,如Settings -> SSH and GPG keys,确保用户能找到正确的位置。 另外,引用[3]中的ssh-add可能用于将密钥添加到ssh-agent,这一步可能在生成密钥后有用,尤其是如果用户设置了密码的话。需要说明如何启动ssh-agent并添加私钥,以方便后续使用。 用户的问题可能还涉及测试SSH连接,比如使用ssh -T git@github.com来验证是否成功。这可能不在现有引用中,但作为常见步骤应该包含进去,以帮助用户确认配置正确。 最后,确保步骤清晰,使用代码块显示命令,并解释每个步骤的目的,比如为什么需要公钥添加到GitHub。同时,相关问题的生成需要考虑用户可能的后续疑问,如测试连接、处理权限问题、多密钥管理等,这些都是用户在使用SSH时常见的问题。</think>### 如何在Linux系统上生成用于GitHubSSH密钥 #### **步骤1:检查现有SSH密钥** 输入命令检查是否已有SSH密钥: ```bash ls -al ~/.ssh ``` 如果看到`id_rsa.pub`或`id_dsa.pub`文件,可直接跳至步骤3[^2]。 --- #### **步骤2:生成SSH密钥** 1. 使用`ssh-keygen`命令生成密钥对: ```bash ssh-keygen -t ed25519 -C "your_email@example.com" ``` - `-t ed25519`:指定密钥算法(推荐使用Ed25519) - `-C`:添加注释(一般为GitHub注册邮箱) 2. 按提示操作: - 保存路径:直接回车使用默认路径`~/.ssh/id_ed25519` - 设置密码(可选):输入`passphrase`或留空直接回车[^4] --- #### **步骤3:添加SSH密钥到GitHub** 1. 复制公钥内容: ```bash cat ~/.ssh/id_ed25519.pub ``` 选中终端输出的全部内容(以`ssh-ed25519`开头) 2. 登录GitHub: - 进入 **Settings → SSH and GPG Keys → New SSH Key** - 将复制的公钥粘贴到输入框,命名后保存[^1] --- #### **步骤4:验证连接** 输入命令测试SSH连通性: ```bash ssh -T git@github.com ``` 若显示`You've successfully authenticated`则配置成功[^3]。 --- ### **相关问题** 1. 如何为不同的Git平台(如GitLab)生成独立的SSH密钥? 2. SSH连接时提示`Permission denied (publickey)`如何排查? 3. 如何修改现有SSH密钥的密码(passphrase)? 4. 为什么推荐使用Ed25519算法而非RSA?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ziqibit

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值