SSH 无密码连接 GitHub,手把手带你配置本地密钥 SSH Keys

在本地配置SSH并连接到GitHub以及其它服务器(详细图文教程) 介绍如何在本地生成SSH密钥,并用它免密登录GitHub和其它服务器。 阅读详情
📖 官方文档:Connecting to GitHub with SSH

步骤:
🔍 检查本地是否存在 SSH 密钥

在生成 SSH 密钥之前,可以检查本地是否有以前的 SSH 密钥。

  1. 打开 Git Bash。
  2. 输入 ls -al ~/.ssh 查看本地是否存在 SSH 密钥
    $ ls -al ~/.ssh
    # 如果有的话会出现 .ssh 文件夹下的详细 SHH 密钥文件目录
    
  3. 检查目录列表,看看是否已经有一个公共 SSH 密钥。默认情况下,公钥的文件名为以下文件名之一(*.pub):
    • id_rsa.pub
    • id_ecdsa.pub
    • id_ed25519.pub
  4. 如果有现有的公钥和私钥对,并且你想用,那你可以将其添加到 SSH 代理 ,并复制相应的 SSH 公钥粘贴到你的 Github 账户上
  5. 如果没有现有的公钥和私钥对,或者不希望使用现存的密钥来连接到 GitHub,那么生成新的 SSH 密钥,并将其添加到 SSH 代理

返回步骤

🔑 生成新的 SSH 密钥,并将其添加到 SSH 代理

检查过本地的 SSH 密钥之后,可以选择生成一个新的 SSH 密钥,之后将其添加到 SSH 代理。

生成一个 SSH 密钥
  1. 打开 Git Bash。

  2. 复制粘贴下面的命令," ... " 内替换为你 GitHub 绑定的电子邮件地址:

    生成默认名字(id_rsa)的 sshkey 密钥对文件:

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

    或者你想生成自定义名字(如:git_rsa)的 sshkey:

    ssh-keygen -t rsa -b 4096 -f ~/.ssh/git_rsa -C "your_email@example.com"
    

    这将创建一个新的 ssh 密钥,使用提供的电子邮件作为标签

    > Generating public/private rsa key pair.
    
  3. 当系统提示你 “Enter a file in which to save the key,” 时,请按 Enter 键,使用默认的文件位置:

    这时,如果你忘了自定义名字,仍然想改的话,依然可以在冒号后面输入:~/.ssh/git_rsa,再敲回车

    > Enter a file in which to save the key (~/.ssh/id_rsa):[敲回车]
    
  4. 在以下的提示符后面,输入你的密码(建议全部直接回车):

    建议直接回车,则以后 SSH 连接不需要密码。如果你执意输入密码,想要改回无密码,则参阅最后一步设置无密码 SSH 密钥连接。

    > Enter passphrase (empty for no passphrase): [直接回车]
    > Enter same passphrase again: [直接回车]
    
将其添加到 SSH 代理
  1. 手动打开 ssh-agent ,确保它在后台运行:

    eval $(ssh-agent -s)
    > Agent pid 59566
    
  2. 将生成的 SSH 密钥添加到 SSH 代理:

    ssh-add ~/.ssh/id_rsa  # 或者你自定义的名字 git_rsa
    
  3. 如果是个自定义名字的 sshkey(如:git_rsa),而不是默认的 id_rsa,那么需要额外这个步骤:

    在 ~/.ssh/config 中加入:

    Host github.com git@github.com
        User your_email
        HostName ssh.github.com
        PreferredAuthentications publickey
        IdentityFile ~/.ssh/git_rsa
        Port 443
    

返回步骤

🔒 将生成的 SSH 公钥粘贴到你的 Github 账户上

为了使用新的(或现有的)SSH 密钥连接到 GitHub ,还需要将其添加到你的 GitHub 帐户中。

  1. 将 SSH 公钥复制到剪贴板:

    clip < ~/.ssh/id_rsa.pub
    

    如果 clip 无效,可以自己找到 C 盘用户目录下的 .ssh 文件夹,在文本编辑器中打开 id_rsa.pub,然后复制里面的内容。

  2. GitHub 页右上角点击你的头像,进入 Settings:
    userbar-account-settings

  3. 在侧边栏中选择 SSH and GPG keys:
    settings-sidebar-ssh-keys

  4. 单机右上角 New SSH key:
    ssh-add-ssh-key1

  5. 在 Title 字段中,给你的新密钥取个名字,再把刚刚复制的公钥的内容粘贴到 Key 框内:
    ssh-key-paste

  6. 点击 Add SSH key:
    ssh-add-key

  7. 弹出提示框,输入你的 Github 密码即可:
    sudo_mode_popup

返回步骤

🔔 测试 SSH 密钥连接是否成功

设置好 SSH 密钥并将其添加到 GitHub 帐户后,就可以测试连接了。

  1. 打开 Git Bash。
  2. 输入如下命令:
    ssh -T git@github.com
    
  3. 可能会出现如下的提示:
    > The authenticity of host 'github.com (IP ADDRESS)' can't be established.
    > RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
    > Are you sure you want to continue connecting (yes/no)?
    
    输入 yes 成功连接:
    > Hi username! You've successfully authenticated, but GitHub does not
    > provide shell access.
    
  4. 如果出现拒绝 ”permission denied“,参阅:Error: Permission denied (publickey)

返回步骤

📬 更改本地仓库对应的 remote’s URL

使用 HTTPs 协议的 URL 在对远程存储库进行 git clone、git fetch、git pull 或 git push 时,每次都要提供用户名和密码。配置好的 SSH 连接则不需要。

  1. 在某个本地仓库中右键点击 Git Bash here。
  2. 通过 git remote -v 命令查看对应的远程仓库的 URL:
    $ git remote -v
    > origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
    > origin  https://github.com/USERNAME/REPOSITORY.git (push)
    
  3. 使用 git remote set-url 命令将 remote’s URL 从 HTTPS 更改为 SSH:
    $ git remote set-url origin git@github.com:USERNAME/REPOSITORY.git
    
  4. 验证 remote’s URL 是否已更改:
    $ git remote -v
    # Verify new remote URL
    > origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
    > origin  git@github.com:USERNAME/REPOSITORY.git (push)
    

返回步骤

🔨 设置无密码 SSH 密钥连接

你可以配置一个身份验证代理 SSH 密钥(即无密码),这样就不必每次使用 SSH 连接时都重新输入密码。

在 Git Bash 中键入以下命令,你可以更改现有密钥的密码,而无需重新生成密钥:

$ ssh-keygen -p
> Enter file in which the key is (/Users/you/.ssh/id_rsa): [敲回车]
> # 此时会让你输入之前设置的密码
> Key has comment '/Users/you/.ssh/id_rsa'
> Enter new passphrase (empty for no passphrase): [直接回车]
> Enter same passphrase again: [直接回车]
> Your identification has been saved with the new passphrase.

返回步骤

使用SSH KEY Linux系统下使用SSH Key的场景及配置。 阅读详情

相关推荐

配置本地和github的ssh密钥对:永久多ssh管理(win10)

1. 目的 方便在使用git pull或git push等的时候不需要输入账号密码 2. 生成密钥对 在~/.ssh下生成密钥文件id_rsa_github(不需要管理员的cmd的,本人使用的是cmder) cd ~/.ssh ssh-keygen -t rsa -C key-for-github ①处输入密钥文件的名称 ②处是使用密钥时的额外密码。可以不填直接回车跳过 ③...

Yvettre的博客 4802

GitHub配置SSH:一步步教你如何轻松连接远程仓库

github 配置ssh 免密连接

爱媳妇儿爱编程 8332

Ubuntu系统配置github的ssh

在 Ubuntu 上配置 GitHub 的 SSH 密钥可以简化与 GitHub 的交互,避免每次输入用户名和密码。首先,检查是否已有 SSH 密钥,如果没有,使用 ssh-keygen 生成新的密钥对(推荐使用 Ed25519 算法)。启动 SSH 代理并将私钥添加到代理中。接着,将公钥复制并添加到 GitHub 的 SSH 设置中。测试 SSH 连接以确保配置正确,如果失败,检查权限和网络设置。最后,配置 Git 使用 SSH URL,并验证克隆或推送操作是否成功。通过这些步骤,你可以安全且便捷地与 G

Anmory的博客 1713

github SSH 生成和使用(详细)

github的ssh生成和连接使用方式

ziqibit的博客 4999

免密码进行SSH连接、Mac远程连接windows系统(拷贝本地文件)

前言 Host 别名 HostName: 是目标主机的主机名,也就是平时我们使用ssh后面跟的地址名称。 Port:指定的端口号。 User:指定的登陆用户名。 IdentifyFile:指定的私钥地址。config 的配置记得配置HostdevzkndeMacBook-Pro:.ssh devzkn$ more config # Private 192.168.2.125 Host iphone

专注于计算机研发知识和资讯分享 2万+

GitHub SSH密钥生成与智能配置指南

SSH(Secure Shell)密钥在GitHub中的主要作用是提供一种安全的方式来认证和建立安全的网络连接。它通过非对称加密技术来保证数据传输的机密性和完整性。在Git操作中使用SSH密钥,开发者可以安全地与远程仓库进行交互,而无需频繁输入用户名和密码。.configSSH的配置通常位于,而.config文件可以用来定义一些自定义的SSH行为。例如,您可以创建一个全局的SSH配置文件来管理所有用户的SSH连接,并使用环境变量动态调整连接参数。

weixin_34725745的博客 1290

【GIT】GitHub密钥SSH keys添加

#SSH密钥

Stongtang的博客 3546

python模拟银行交易流水

模拟自动生成银行交易流水,其中包括:入账账号、出账账号、交易金额、交易余额、交易时间、出入表示关键字段

qq_31823889的博客 2910

通过SSH 密钥连接GitHub/Bitbucket

GitHub, Bitbucket 都是项目托管服务器,都支持Gib版本控制,不过二者是有区别的。Github 一般是能够正常访问的,Bitbucket访问不稳当;Github 提供公开库和私有库,私有库需要付费,Bitbucket同时提供公有库和私有库,均免费。 Github只支持Git,Bitbucket同时支持Git和Mercurial(Hg)参考:http://blog.aboutc.ne

lue2009的专栏 1万+

AudioTrack音频播放流程深度解析

深入解析Android AudioTrack音频播放的完整链路:从Java API到Native层,从共享内存Ring Buffer机制到FAST Track低延迟优化,配合源码分析带你彻底搞懂Android音频播放的底层原理

Cheson的专栏 940

C# ArcGIS Engine二次开发——实现“加载shp文件”

private void AddShpDataToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog OpFileDialog=new OpenFileDialog();//OpenFileDialog:打开文件对话框 OpFileDialog.Title="添加矢量数据"; OpFileDialog.Filter="(*.shp)|*.shp";//filter:过滤器;"(*.shp)|*.shp"

weixin_42191203的博客 5254

ssh-key生成密钥及SSH无密码登录的配置

文章作者:foochane 原文链接:https://foochane.cn/article/2019061601.html 1 ssh-keygen命令 ssh-keygen命令说明: -t :指定加密类型(如:rea,dsa) -C : 指定注释,用于识别这个密钥 其他参数具体可以查看帮助 $ ssh-keygen help Too many arguments. usage: ssh-k...

foochane 1万+

tiktok算法协议研究

经过上述分析,可以确定目标字符串来源于一段 JSON 数据,而这段 JSON 数据来自于一个经过加密的本地文件。对字符串 "sdi_v2" 进行 SHA-1 计算,得到 20 字节的结果;将第一步得到的数据进行MD5计算,生成16字节的结果;将第二步的结果转换为十六进制字符串,从而得到 32 字节的密钥。写这种算法分析的帖子真的是太无聊了,就先分析到这里吧,后续有机会再来谈下被加密的本地文件是怎么来的!!自我感觉TT的算法并不难,就是量太大了,所以我想问问有没有感兴趣的朋友来一起分析,欢迎联系。

2503_90751938的博客 2581

github配置新电脑SSH keys

通过 SSH 连接,无需每次输入用户名和密码,且传输更安全。命令生成密钥对(推荐使用。

sre救赎之路 1329

CAD制图

CAD制图可以提高设计效率和准确性,并方便文档的存档和交流,是现代工程设计中不可或缺的一部分。·CAD三维开发是指使用计算机程序和工具来创建、编辑和操作三维模型、图形和设计的过程。它在工程、建筑、制造和游戏等领域广泛应用。CAD三维开发可能涉及到复杂的图形算法、性能优化、并行计算等方面的内容,因此需要深入学习和实践,以提高开发的效率和质量。

RZer的博客 1652

SerDes学习笔记:DFE均衡架构示例(USB3.1、PCIe3.0\4.0)

本文探讨了DFE均衡器架构在不同数据接口中的应用特性。研究表明,抽头数量随数据速率提升而增加,1-16抽头架构较为常见。通过PCIeGen3/4实例分析,对比了单抽头、双抽头和15抽头DFE的性能差异,证明多抽头结构能通过精细调节有效提升噪声容限和降低误码率。文章详细阐述了DFE工作原理,包括其通过反馈信号对输入信号的补偿机制,以及不同抽头对消除码间干扰的作用。实验采用8Gbps速率(125ps/UI)进行波形仿真,直观展示了均衡处理前后的信号变化,为理解信道均衡技术提供了重要参考。

一只豌豆象的博客 519

使用SSH密钥连接Github【图文教程】

使用Github,也许大家觉得比较麻烦的就是在每次push的时候,都需要输入用户名和密码。如果使用SSH,就可以记住用户名,并创建属于自己的密码来保证安全操作,还有神奇的一招可以“不用输入密码”哦。下面将介绍如何创建SSH Keys并将公钥加到GitHub账户中,使用SSH Keys在本机和GitHub之间建立一个安全的连接。一、Windows环境下生成SSH key且连接GitHub第一步、看看...

IT人生 1202

YOLO26优化:注意力魔改 | SKAttention注意力,自适应地调整其感受野大小,效果优于SENet

SKAttention输入自适应地调整其感受野大小的能力

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 250

Git:创建SSH密钥并更新至Github

&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;前文我们已经讲过了如何在本地上使用Git,但是Git最厉害的地方并不在于从本地使用,而是在于其支持协同工作,以及Github的简单上传和下载。现在,我们要开始涉及Github的使用了,在使用之前,我们必须要先配置SSH密钥。 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;我们默认各位已经有了Github账户,如果没有的

海军上将光之翼的博客 3479

YOLO项目部署:从Python脚本到Docker容器的企业级交付全流程

YOLO模型企业级Docker部署方案 核心挑战 环境一致性:解决"本地能跑,服务器崩掉"问题 可扩展性:支持单实例到多实例扩展 稳定性:确保99.9%可用性 部署流程 项目改造:模块化代码,分离配置 Docker镜像:支持CPU/GPU环境 API服务:封装推理逻辑 监控告警:实现自动化运维 技术方案 需求 解决方案 环境一致性 Docker镜像+依赖冻结 可扩展性 K8s+负载均衡 稳定性 健康检查+自动重启 项目结构 模块化代码组织 外部化配置管理 精确依赖版本控制 摘要重点:通过

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1230

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

初次使用git配置以及git如何使用ssh密钥(将ssh密钥添加到github)

初次安装git配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git config --global user.name "superGG1990" $ git config --global user.email "superGG19...

aohouning3139的博客 2187

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Github使用ssh密钥登陆

Github使用ssh密钥登陆生成SSH密钥配置Github检查SSH连接使用Github附录:更改密钥名称方法一:为已创建的密钥改名方法二:创建时使用新的名称参考链接 想要从linux命令行clone github仓库的话,目前只支持ssh方式了。 这里总结一下如何生成ssh 公钥和私钥,以及如何配置以登陆github。 生成SSH密钥 Linux自带生成SSH密钥的程序。 打开终端,不用开启root,输入 ssh-keygen -t rsa 就会在~/.ssh下生成一个私钥id_rsa,和一个公钥i

Xav Pun的博客 3462

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

GitHub - 使用SSH进行连接

有一个SSH密钥跟了我很多年,更换电脑也不曾更换它。它不需要额外输入密码就能用,我将它的公钥用在了诸多平台。虽然很方便,但是安全性差(指没有密码)和匿名性差(指同一公钥在不同平台可能被关联)。于是,计划在保留已有SSH密钥的情况下,先新创建一个SSH密钥专门用于GitHub,并加上密码增加安全性,后续再逐步为其他平台创建。在实际操作过程中,遇到了一些问题并进行研究,在此记录一番,希望对你有所帮助。

crasowas的博客 3886

2分钟完成Github配置ssh密钥

配置ssh密钥的目的是为了可以在自己的本地开发环境可以顺利拉取和推送代码到Github上的远程仓库本机是Ubuntu 16.04环境,已安装ssh。

DongZhaoCheng 3635

在ubuntu系统上生成SSH密钥,并把对应的公开密钥添加到GitHub账户

第1步:检查SSH密钥 打开终端,并键入命令: ls -a ~/.ssh # 列出.ssh 目录中存在的文件 检查这个目录列表,看看是否已经有了公共SSH密钥。 默认的公共密钥文件名字类似如下: id_dsa.pub id_ecdsa.pub id_ed25519.pub id_rsa.pub 如果怕损坏原有的密钥,请作好备份。键入如下命令: mkdir key_backup cp ~...

Andy20081251的专栏 1370

Github的SSH密钥 免密登录 配置(图文详解)

目录 一、先在用户文件夹/主机名下创建.ssh文件 二、配置Github 三、测试是否可以使用 一、先在用户文件夹/主机名下创建.ssh文件 例如我的文件夹为 C:\Users\John 1.右键选择Git Bash Here 2.输入命令 ssh keygen -t rsa -C youremail@email.com 参数解释:-t:选择何种加密 -C:描述该ssh针对后面的邮箱 youremail@email.com:替换为你的......

timerring的博客 4万+
上一篇: pytorch flask 实现的图像风格转换 Web 应用
下一篇: 手把手教你解决 Git 冲突——微软 GitHub 课程
Skr.B
博客等级 码龄8年 1103粉丝 81原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

Skr.B

WUHOOO~

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

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

打赏作者

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

抵扣说明:

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

余额充值