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

windows、Linux 设置 SSH 密钥并连接到 GitHub

如何设置 SSH 密钥并连接到 GitHub 🚀

嘿,大家好!今天我们来聊聊如何创建和配置 SSH 密钥,以便与 GitHub 建立安全连接。这是一个对新人友好的教程,所以毫无压力,一步一步来!🔑✨

第一步:检查现有的 SSH 密钥

首先,我们需要看看你的小机子上是否已经有 SSH 密钥。打开 Git Bash 或者其他终端应用程序,然后输入以下命令:

ls ~/.ssh

如果你看到 id_rsaid_rsa.pub 文件,恭喜你,你已经拥有 SSH 密钥了!否则,让我们继续生成新的密钥吧。

第二步:创建新的 SSH 密钥

要生成新的 SSH 密钥对,请输入下面的命令:

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  • 提示: 当系统提示你选择存储路径时,按下 Enter 使用默认路径是最简单的方法。
  • 可选: 设置一个维护安全的密码短语是个不错的选择,这样就算密钥被偷了,你的账户也不会轻易被访问。💪

第三步:添加 SSH 密钥到 SSH 代理

我们需要确保 SSH 代理正在运行,然后将刚创建的密钥添加到代理中。这就像给一名经过认证的快递员一个可以信赖的信封,让他安全高效地帮你传递重要信息。

在终端中输入:

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

常见问题 🤔

  • 如果 ssh-add 命令出错,可能需要安装 OpenSSH 客户端并确保 Windows 设置中启用了 “OpenSSH Authentication Agent”。看一下 Windows 服务中它是否已经启用哦。

第四步:在 GitHub 上添加 SSH 公钥

接下来,我们把生成的 SSH 公钥放到 GitHub 账户里。这样,GitHub 就知道这份“钥匙”是你的,可以打开通行渠道。

在 Windows 上:

clip < ~/.ssh/id_rsa.pub

在 Linux 上:

cat ~/.ssh/id_rsa.pub | xclip -sel clip

接着,上 GitHub:

  1. 登录你的 GitHub 账号。
  2. 进入 “Settings”(设置)。
  3. 点击 “SSH and GPG keys”。
  4. 选择 “New SSH key” 按钮。
  5. 粘贴你的公钥,并添加一个小描述。
  6. 最后,点击 “Add SSH key”。

测试 SSH 连接:确保一切顺利进行!🔗

我们已经完成了 SSH 密钥的配置,现在是时候测试一下连接,看我们的设置是不是正确的。别害怕,这一步超级简单!🌟

第五步:测试 SSH 连接

通过这个测试,我们可以验证 SSH 配置是否正确,确保与你心爱的 GitHub 之间的桥梁毫无阻碍(诗意?哈哈😄)在终端中输入以下命令来试试吧:

ssh -T git@github.com

预期结果

如果一切顺利,你会看到类似下面的信息:

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

-“Hi username!” - 这里的 username 会显示成你的 GitHub 用户名。如果是这样,那就说明你的 SSH 连接配置成功啦!🎉

常见问题和解决方法 🙋‍♂️

  • 提示“Permission denied” - 如果你看到这个信息,别担心。通常是因为密钥没有正确添加到 SSH 代理,或者 GitHub 上的 SSH 公钥配置有误。你可以:

    1. 再次确认是否按照教程一步步操作。
    2. 确认公钥是否已经成功添加到 GitHub 设置中。
    3. 检查 SSH 代理是否正在运行并重新添加密钥:ssh-add ~/.ssh/id_rsa
  • 需要确认 SSH key fingerprints - 有时,会让你确认 SSH key 的指纹(fingerprints),以确认连接的安全性。GitHub 提供了指纹清单,你可以在他们的官方文档中找到(直接搜索“GitHub SSH fingerprints”即可)。

友情提示 ❤️

  • 记住,每次你想通过 SSH 来访问 GitHub 仓库时,这个配置会帮助你让一切进行得更加流畅和安全。
  • 即使更改邮箱或者 GitHub 账号信息,也记得及时更新你的 SSH key,以免出现小问题哟。

太棒啦,你已经设置好并测试了 SSH 连接,可以继续愉快地使用 GitHub 啦!无论是代码的推送还是拉取,都将像秋风扫落叶般顺利~ 🍂

如果还有任何疑问或者体验了什么奇妙状况,欢迎在下方评论区讨论,攻克技术难关就是这么有趣!加油!💪👩‍💻👨‍💻

Happy hacking! 🎈

相关文章:

  • Flash-03
  • ARM Cortex-M处理器中的MSP和PSP
  • 双周报Vol.66: String模式匹配增强、while条件支持使用 is 表达式、新增IDE安装器...多项核心技术更新!
  • 前端包管理工具进化论:npm vs yarn vs pnpm 深度对比
  • 【软考】计算机软件著作权的保护期
  • 高级系统架构师--第十章:计算机网络
  • 【初阶数据结构】链表的柔光之美
  • 软件工程----瀑布模型
  • 【Python模块】——pymysql
  • 华为hcia——Datacom实验指南——二层交换原理
  • 一键导出数据库表到Excel
  • AI人工智能之机器学习sklearn特征选择
  • [原创](Modern C++)现代C++的关键性概念: 流迭代器std::istream_iterator的优秀用法
  • 树(比赛用)
  • LeetCode 2502.设计内存分配器:暴力模拟
  • 【新算法】基于Transformer-LSTM-Adaboost的多输入单输出回归预测模型【MATLAB】
  • 解决Value of type ‘AVCodecContext‘ has no member ‘channels‘ 的问题
  • Mac编译ffmpeg源码并集成到iOS App
  • QT C++ QtConcurrent::run 异步任务 简单例子
  • 显式指定 ChromeDriver 路径
  • 厦门seo网络优化公司/搜索引擎优化要考虑哪些方面?
  • 个人做房产网站有哪些资料/第三方关键词优化排名
  • 如何做网站赌博的教程/公司宣传网站制作
  • 哪家公司建设网站/优化设计答案四年级上册语文
  • 宝安做网站的/网站优化费用报价明细
  • 辽宁建设工程信息网场内业绩/宁波seo基础入门