git 配置 ssh

GitHub 支持 HTTPS 和 SSH 两种协议。使用 HTTPS 协议时,每次提交都要求输入用户名和密码,显得有点麻烦。本文介绍如何通过配置 SSH keys 实现愉快的提交。

配置 SSH keys 的原理很简单,采用非对称加密方式生成公钥和私钥,公钥告诉 GitHub ,私钥留在自己电脑上(私钥不可泄露),当我们向 GitHub 上提交数据时,GitHub 会用我们留给它的公钥加密一段消息返回给我们的电脑,如果我们能够用私钥解密成功,说明是合法的用户,这样就避免我们输入用户名密码了。大致的原理就是这样,现在很多免登录的系统都采用了这种方式,比如 Hadoop 免登录配置也是这样。

1 查看本地是否已有 SSH keys

查看当前用户目录下是否有 .ssh 文件夹,如果有就跳过第 2 和 3 步。

$ ls -la ~/.ssh
total 32
drwxr-xr-x 1 Administrator 197121    0 八月   27 15:29 ./
drwxr-xr-x 1 Administrator 197121    0 二月   10 16:44 ../
-rw-r--r-- 1 Administrator 197121 3381 八月   27 15:21 id_rsa
-rw-r--r-- 1 Administrator 197121  742 八月   27 15:21 id_rsa.pub
-rw-r--r-- 1 Administrator 197121 1593 九月    5 17:05 known_hosts

2 生成 SSH 指纹

ssh-keygen -t rsa -b 4096 -C "你的邮箱地址"

3 添加 SSH 到 ssh-agent 中

eval "$(ssh-agent -s)"

执行完上述语句之后,我们当前用户目录下已经有了一个名为 .ssh 的隐藏文件夹了,打开这个目录,会发现有一个名为 id_rsa.pub 的文件,这就是我们一会要使用的公钥文件。

4 将公钥告诉 GitHub

登录 GitHub ,点击右上角的向下的箭头,选择 Settings ,在新打开的页面中左边侧栏选择 SSH and GPG keys ,再右边选择 New SSH key,输入 Title 和 Key 。

Title 的值建议能标识出哪台设备,如你的电脑型号、操作系统名称等信息。Key 的值为上述 id_rsa.pub 文件中的内容。

 

 5TortoiseGit 使用SSH需要安装PuTTY

 参考 https://blog.csdn.net/yhcad/article/details/88624286

posted @ 2021-10-19 17:04  听海漫步  阅读(1235)  评论(0编辑  收藏  举报