Github配置ssh key原理及操作步骤

文章目录

githubpush项目的时候,如果走https的方式,每次都需要输入账号密码,非常麻烦。而采用ssh的方式,就不再需要输入,只需要在github自己账号下配置一个ssh key即可。

配置SSH

git使用SSH配置, 初始需要以下三个步骤

  1. 使用秘钥生成工具生成rsa秘钥和公钥
  2. rsa公钥添加到代码托管平台
  3. rsa秘钥添加到ssh-agent中,为ssh client指定使用的秘钥文件
第一步:检查本地主机是否已经存在ssh key
powershell 复制代码
PS C:\Users\lenovo> cd ~/.ssh
PS C:\Users\lenovo\.ssh> ls

存在id_rsa(私钥)和id_rsa.pub说明本地已存在。

第二步:生成ssh key

如果不存在ssh key,使用如下命令生成

powershell 复制代码
ssh-keygen -t rsa -C "xxx@xxx.com"
第三步:获取ssh key公钥内容
powershell 复制代码
cat id_rsa.pub
第四步:Github账号上添加公钥

进入Settings设置


添加ssh key,把刚才复制的内容粘贴上去保存即可

第五步:验证是否设置成功
powershell 复制代码
ssh -T git@github.com

注意之后在clone仓库的时候要使用sshurl,而不是https

验证原理

SSH登录安全性由非对称加密 保证,产生密钥时,一次产生两个密钥,一个公钥,一个私钥,在git中一般命名为id_rsa.pub, id_rsa。

本地生成一个密钥对,其中公钥放到远程主机,私钥保存在本地。

当本地主机需要登录远程主机时,本地主机向远程主机发送一个登录请求,远程收到消息后,随机生成一个字符串并用公钥加密,发回给本地。本地拿到该字符串,用存放在本地的私钥进行解密,再次发送到远程,远程比对该解密后的字符串与源字符串是否等同,如果等同则认证成功。

相关推荐
带娃的IT创业者9 小时前
Python 异步编程完全指南:从入门到精通
服务器·开发语言·python·最佳实践·asyncio·异步编程
草梅友仁11 小时前
墨梅博客 1.9.0 发布与 LeanCloud 停服应对 | 2026 年第 11 周草梅周报
开源·github·ai编程
zzb158011 小时前
RAG from Scratch-优化-query
java·数据库·人工智能·后端·spring·mybatis
一只鹿鹿鹿11 小时前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
房产中介行业研习社11 小时前
2026年3月哪些房源管理系统功能全
大数据·运维·人工智能
喵叔哟11 小时前
9. 【Blazor全栈开发实战指南】--Blazor调用JavaScript
开发语言·javascript·udp
堕27411 小时前
MySQL数据库《基础篇--数据库索引(2)》
数据库·mysql
wei_shuo11 小时前
数据库优化器进化论:金仓如何用智能下推把查询时间从秒级打到毫秒级
数据库·kingbase·金仓
wuqingshun31415912 小时前
如何停止一个正在退出的线程
java·开发语言·jvm
我命由我1234512 小时前
Element Plus - Form 的 resetField 方法观察记录
开发语言·前端·javascript·vue.js·html·html5·js