当前位置: 首页 > news >正文

Ubuntu:Git SSH密钥配置的完整流程

🛠 Ubuntu 下 Git SSH 密钥配置完整流程

1️⃣ 检查是否已有 SSH 密钥

先看看本地有没有旧的 SSH 密钥:

ls -al ~/.ssh

可能会看到这些文件:

  • id_rsa / id_rsa.pub → 旧的 RSA 密钥对

  • id_ed25519 / id_ed25519.pub → 较新的 ED25519 密钥对

如果已经存在,而且没过期,可以直接用。如果显示密钥过期,建议重新生成。

2️⃣ 生成新的 SSH 密钥对

推荐使用更安全、更快的 ED25519 算法

ssh-keygen -t ed25519 -C "你的邮箱"

执行后会提示:

Enter file in which to save the key (/home/youruser/.ssh/id_ed25519):

直接回车(保存在默认路径),如果要保留旧密钥,可以改个名字,比如 id_ed25519_new

然后会提示输入密码短语,可以直接回车跳过(不设置密码)。

生成完成后,你会得到两个文件:

  • ~/.ssh/id_ed25519私钥,自己保留,不要泄露

  • ~/.ssh/id_ed25519.pub公钥,用来上传到远程仓库

3️⃣ 将公钥添加到远程 Git 仓库

如果用 GitHub
cat ~/.ssh/id_ed25519.pub

复制输出内容,然后:

  • 登录 GitHub

  • 进入 Settings → SSH and GPG keys

  • 点击 New SSH key

  • 填名字(随便取),把复制的公钥粘贴进去,保存

如果用 GitLab
  • 登录 GitLab

  • 进入 Profile → Preferences → SSH Keys

  • 粘贴公钥,保存

4️⃣ 测试 SSH 连接

GitHub:

ssh -T git@github.com

GitLab:

ssh -T git@gitlab.com

如果成功,会输出类似:

Hi your-username! You've successfully authenticated, but GitHub does not provide shell access.

5️⃣ 配置 Git 使用 SSH 协议

如果你之前用 HTTPS clone 的仓库,建议改成 SSH 远程地址:

git remote set-url origin git@github.com:your-username/your-repo.git

查看确认:

git remote -v

应该显示 SSH 地址。

6️⃣ 添加到 ssh-agent(可选)

为了避免每次都要输入密码,可以把密钥加入 ssh-agent:

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

7️⃣ 拉取代码测试

git pull origin 分支名

到此为止,你的 Ubuntu 已经配置好了新的 SSH key,可以正常拉取和推送代码。


文章转载自:

http://dBzRsCGd.xywfz.cn
http://yHQj0vvn.xywfz.cn
http://X0kPrVEO.xywfz.cn
http://h29k12jr.xywfz.cn
http://KvwCduzd.xywfz.cn
http://ojS1pvHf.xywfz.cn
http://Vs6uuJ8w.xywfz.cn
http://FCOa61MZ.xywfz.cn
http://xPZcqWGf.xywfz.cn
http://VXZa6xFe.xywfz.cn
http://epCVXE5t.xywfz.cn
http://XRPX4l5A.xywfz.cn
http://eEoiQiFR.xywfz.cn
http://WvFGIoz2.xywfz.cn
http://ml68YmEy.xywfz.cn
http://dexdhAF0.xywfz.cn
http://MNkWtcDt.xywfz.cn
http://9t8m8Atm.xywfz.cn
http://xOA3HptA.xywfz.cn
http://AvOmoirL.xywfz.cn
http://yYXel25U.xywfz.cn
http://8HlDl03P.xywfz.cn
http://H5bqhnBI.xywfz.cn
http://aQplz2O7.xywfz.cn
http://qMxSB1DU.xywfz.cn
http://2asiaqJP.xywfz.cn
http://Xt9K8n8i.xywfz.cn
http://xJTeNrvO.xywfz.cn
http://u3IdWp9Z.xywfz.cn
http://pojeNPEj.xywfz.cn
http://www.dtcms.com/a/370576.html

相关文章:

  • 智能驾驶调研
  • 【Luogu_P8118】 「RdOI R3.5」Mystery【Slope Trick】【DP】
  • SSH服务远程安全登录
  • cds序列转换为pepperl脚本详细解读及使用
  • 什么时候用no,什么时候用non,什么时候用not?
  • 2025年本体论:公理与规则的挑战与趋势
  • 发布vue项目、nginx配置及问题场景(history)
  • Netty从0到1系列之EventLoop
  • 在Ubuntu上配置Nginx实现开机自启功能
  • 智慧灌区系统:科技赋能,让农田灌溉更智能、更高效、更可持续
  • 第2课:环境搭建:基于DeepSeek API的开发环境配置
  • 本地MOCK
  • 使用Docker安装Stirling-PDF(PDF工具)
  • 交换机详细
  • 综合安防集成系统解决方案,智慧园区,智慧小区安防方案(300页Word方案)
  • Spring Data JPA 对PostgreSQL向量数据的支持
  • 去中心化投票系统开发教程 第二章:开发环境搭建
  • BOSS直聘招聘端自动化识别策略调整(20250905)
  • MySQL--索引和事务
  • c++之基础B(双重循环)(第五课)
  • 3、工厂模式
  • 2025高教社国赛数学建模竞赛B题完整参考论文(含模型和代码)
  • MCP Token超限问题解决方案
  • 并行编程实战——CUDA编程的纹理内存
  • 京东商品评论API开发指南
  • Day27 函数2 装饰器
  • YOLOv8支持旋转框检测(OBB)任务随记
  • 解决VMWare网络适配器的桥接模式 ping 重复数据包DUP问题
  • Elasticsearch优化从入门到精通
  • 【开题答辩全过程】以电商数据可视化系统为例,包含答辩的问题和答案