GitHub新手必看:SSH密钥设置和‘Permission Denied‘错误解决指南

这篇具有很好参考价值的文章主要介绍了GitHub新手必看:SSH密钥设置和‘Permission Denied‘错误解决指南。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

GitHub新手必看:SSH密钥设置和‘Permission Denied‘错误解决指南,Git,git,github,ssh

Github SSH密钥错误解决指南

问题描述
当您尝试从GitHub仓库拉取或推送代码时,可能会遇到这样的错误信息:“git@github.com: Permission denied (publickey). fatal: Could not read from remote repository.” 这类似于您试图进入一间锁着的房间,但您没有正确的钥匙。

解决步骤

  1. 检查您的钥匙串

    • 在终端运行 ssh-add -l 来检查您是否已有SSH密钥,即访问GitHub的“钥匙”。
    • 如果没有,想象您需要制作一把新钥匙。运行以下命令来创建它:
      ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
      
  2. 把新钥匙挂到钥匙串上

    • 使用以下命令将新生成的SSH密钥添加到SSH-Agent,就像把新钥匙挂到钥匙串上一样:
      ssh-add ~/.ssh/id_rsa
      
  3. 告诉管理员(GitHub)您的新钥匙

    • 打开 ~/.ssh/id_rsa.pub 文件,复制里面的内容。这就是您的公钥,相当于钥匙的副本。
    • 登录GitHub,进入“Settings” -> “SSH and GPG keys”,点击“New SSH key”,粘贴您的公钥内容。
  4. 测试门锁

    • 运行以下命令,检查您是否能与GitHub成功通信:
      ssh -T git@github.com
      
    • 如果系统显示“Hi [Your GitHub Username]! You’ve successfully authenticated…”,则表示成功。
  5. 尝试开门(推送代码)

    • 现在尝试推送代码到GitHub:
      git push origin main
      

如果在执行这些步骤后,问题仍然存在,您可能需要检查是否有多个SSH密钥或其他特殊配置问题。

附:第1步中生成SSH密钥的详细步骤(终端会弹出交互)

当您运行 ssh-keygen 命令时,系统会引导您完成几个步骤,就像制作一把特殊钥匙的过程:

  1. 选择钥匙存放地点

    • 系统会询问您希望将密钥保存在哪个位置,默认路径是 C:\Users\您的用户名/.ssh/id_rsa
    • 您可以接受默认路径,或者指定一个新的存放地点。
  2. 设置钥匙的密码保护(可选):

    • 系统会询问您是否要为这把钥匙设置密码保护。这就像为您的钥匙设置一个密码,增加安全性。
    • 您可以选择设置一个密码,也可以不设置,直接按Enter键。

完成这些步骤后,您将拥有一对新的SSH密钥,包括一个公钥(相当于钥匙的副本)和一个私钥(相当于实际的钥匙)。接下来,您需要将公钥添加到GitHub,并测试您的SSH连接。
当您运行 ssh-keygen 命令以生成SSH密钥时,系统会执行一系列操作并提供一些反馈信息。下面是这个过程的详细步骤和每一步所展示的信息:

  1. 启动生成过程

    • 当您在终端输入 ssh-keygen -t rsa -b 4096 -C "您的邮箱地址" 时,系统开始创建一个新的SSH密钥对。
    • 这相当于制作一对高安全性的钥匙和钥匙副本。
  2. 选择密钥保存位置

    • 系统会询问您希望将密钥保存在哪里。例如:“Enter file in which to save the key (C:\Users\25451/.ssh/id_rsa):”。
    • 您可以接受默认路径,或输入一个新的路径。这就像选择将您的钥匙放在哪个抽屉里。
  3. 设置密码短语(可选):

    • 系统会询问您是否要为密钥设置一个密码短语:“Enter passphrase (empty for no passphrase):”。
    • 您可以设置一个密码短语,增加额外的安全层次,或直接按Enter键跳过。这相当于为您的钥匙加上一个密码锁。
  4. 确认密码短语

    • 如果您设置了密码短语,系统会要求您再次输入以确认:“Enter same passphrase again:”。
    • 确认后,继续下一步。
  5. 密钥生成完成

    • 当密钥生成完毕,系统会显示相关信息,例如:
      Your identification has been saved in C:\Users\25451/.ssh/id_rsa
      Your public key has been saved in C:\Users\25451/.ssh/id_rsa.pub
      
    • 这告诉您私钥(identification)和公钥(public key)的保存位置。
  6. 密钥指纹和Randomart图像

    • 系统还会显示密钥的指纹和Randomart图像,例如:
      The key fingerprint is:
      SHA256:azNoG0XUiqPo3qrMvYguXfi1YLQH8Tx3D+qkEZfkGGA 2545197649@qq.com
      The key's randomart image is:
      +---[RSA 4096]----+
      |    E.  ..       |
      |   .. ... .      |
      |     + *.o       |
      |    o O.* o      |
      |   + + *So o     |
      |  o * +oo.  .    |
      | o + ++*=        |
      |= =...o+.o       |
      |=Bo+o .          |
      +----[SHA256]-----+
      
    • 这些信息提供了您的密钥的一个视觉和加密摘要。

完成这些步骤后,您的SSH密钥对就创建好了。您的私钥(id_rsa文件)是您个人保留的,而公钥(id_rsa.pub文件)需要添加到GitHub账户中,以便进行安全的通信。文章来源地址https://www.toymoban.com/news/detail-766419.html

到了这里,关于GitHub新手必看:SSH密钥设置和‘Permission Denied‘错误解决指南的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SSH解决Permission denied (publickey).

    在本地windows使用ssh远程连接服务器时我遇到了permissi denied(publickey)的error,从csdn博客:解决Permission denied (publickey).我受到了启发。 在上述博客中提到了服务器公钥文件夹权限错误的问题,可以使用如下指令进行更改:  受到里面的your_group的启发,我不禁好奇我的group跟服务器

    2024年02月12日
    浏览(48)
  • SSH 登陆失败 Permission denied (publickey) 排错

    在阿里云上有一台Ubuntu 18.04 版本的服务器,今天使用 ssh 登陆时报错 “ Permission denied (publickey) ”; 登陆的客户端机器是新安装的 Ubuntu 22.04 机器; 为了安全,登陆方式一直使用的本地私钥登陆; 后续说明中,使用的假设条件 客户端机器上的用户是 foo 服务器端的帐户是 b

    2024年02月10日
    浏览(41)
  • docker中报permission denied错误

    执行 Docker 命令 提示 permission denied docker命令permission denied docker容器启动报错Permission denied Docker容器内Permission denied解决方法 docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused “exec: “/usr/local/tomcat/bin/catalina.sh”: permission denied”: unkn

    2024年02月15日
    浏览(50)
  • 解决ssh登录Permission denied, please try again

    现象截图如下: 确定root的密码是正确的,最后的原因找到了,是远程的服务器,禁用了root账户可以被远程访问的权限。开启操作如下: 1.编辑配置文件 vi /etc/ssh/sshd_config 2.文件中找到PermitRootLogin #PermitRootLogin without-password 这行改成 PermitRootLogin yes 3.退出并保存,重启ssh serv

    2024年01月22日
    浏览(53)
  • github提示Permission denied (publickey),如何才能解决

    当GitHub提示“Permission denied (publickey)”错误,这通常意味着您的SSH密钥没有被正确地配置。以下是一些常见的解决步骤,帮助您诊断和解决该问题: 检查是否已设置SSH密钥 : 运行以下命令检查是否存在SSH密钥: bashCopy code ls -al ~/.ssh 这将列出 .ssh 目录下的所有文件。您应该看

    2024年02月03日
    浏览(58)
  • ubuntu-2204 gerrit ssh 报错Permission denied (publickey).分析及解决

    ubuntu-2204 gerrit ssh 报错Permission denied (publickey).分析及解决 使用 repo init/sync 下载代码时遇到报错: Permission denied (publickey). 以下 user 及 10.100.1.115 为化名 $ ssh -p 29418 user@10.100.1.115 查看详细信息 $ ssh -vv -p 29418 user@10.100.1.115 通过以上详细信息可以看到以下几个关键点 OpenSSH版本为

    2024年02月09日
    浏览(82)
  • 【linux】解决Git错误Permission denied(publickey)

    上次租的腾讯云服务器,服务区是在新加坡,不论git clone还是下载文件,从来都没有问题。这次租的服务区选在了广州,出现各种问题,就这事,得到的教训,租服务器最好还是租境外地区的比较好,毕竟工欲善其事必先利其器。 在git 克隆项目时,出现Permission denied(publi

    2024年02月08日
    浏览(65)
  • Git报错:git@github.com: Permission denied (publickey)

    输入指令 ssh -T git@github.com 测试SSH链接,出现如下报错: git@github.com: Permission denied (publickey,password,keyboard-interactive). git@github.com: Permission denied (publickey). git@github.com\\\'s password: ,但是即是你输入的是正确的密码,依旧提示 Permission denied, please try again. 。 在网上搜索相关解决方案,

    2024年02月02日
    浏览(59)
  • docker 容器中执行命令出现错误: 13: Permission denied

    登录容器时,使用 -u 0 参数: 举例:

    2024年02月13日
    浏览(79)
  • 【Git】错误:权限被拒绝(公钥)(Permission denied (publickey).)

    Git项目突然不能正常使用,自己的账号下的项目。提示 Permission denied (publickey). 附上具体配置描述如下 .ssh文件目录: config配置文件: 测试命令: 相同配置3个成功,1个失败,不应该是git软件问题,应该是配置问题,在mac上进行相同配置一气呵成一切都是那么完美。 那为什么

    2024年02月12日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包