Git配置远程SSH连接

关于SSH

SSH 是较可靠,专为远程登录会话和其他网络服务提供安全性的协议。使用 SSH 协议可以连接远程服务器和服务并向它们验证。连接远程仓库时无需输入密码而且能实现对 github 的流畅访问

具体请看这里

查看现有的SSH

Windows打开Git BashLinux打开终端输入:

1
ls -al ~/.ssh

看到这个证明已经有 ssh 密钥(以 .pub 结尾的文件)

1
2
3
4
5
6
7
8
$ ls -al ~/.ssh
total 25
drwxr-xr-x 1 Administrator 197121 0 Mar 10 11:53 ./
drwxr-xr-x 1 Administrator 197121 0 Mar 10 15:39 ../
-rw-r--r-- 1 Administrator 197121 3381 Mar 10 11:51 id_rsa
-rw-r--r-- 1 Administrator 197121 743 Mar 10 11:51 id_rsa.pub
-rw-r--r-- 1 Administrator 197121 656 Mar 10 11:53 known_hosts
-rw-r--r-- 1 Administrator 197121 92 Mar 10 11:53 known_hosts.old

文件一般是在C盘下的用户–>你的名字–>.ssh目录下

创建一个新的SSH秘钥

Windows打开Git BashLinux打开终端输入:

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

你可以把引号里的替换为你自己的邮箱,不换的话问题不大,然后终端会让你输入一些东西,不用管他,一直回车下一步

当显示这个的时候,证明创建成功

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:t3925EJgD4kcUp69dBv/nqkM85n0I5mFRW4BlZwaVeo your_email@example.com
The key's randomart image is:
+---[RSA 4096]----+
| .=o=|
| . . B |
| o + * .|
| . * =oo+ |
| So.B +A+ |
| .o.B.o.o|
| .o o+o.|
| .*+B.*|
| .OoBo|
+----[SHA256]-----+

绑定GitHub

复制秘钥

首先在终端里面输入已下指令会显示出的一堆字符串,赋值这个字符串

1
cat ~/.ssh/id_rsa.pub

Windows用户可以在C盘目录下的Users(用户)文件夹下的你的电脑账户文件夹中的.ssh文件夹里的后缀为.pub的文件,右键,以文本文档的方式打开,并赋值里面的内容

绑定

打开GitHub,点击右上角的头像,点击设置(Settings),点击SSH and GPG keys,在SSH keys一栏的右边有一个New SSH key,点击之后

Title:输入名称(随便填)

Key Type:里面默认即可(Authentication Key)

Key:里面就填刚复制的内容(要注意回车,最好把光标删除到最后一个字符处)

完成配置

试验是否配置成功

1
ssh -T git@github.com

第一次输入命令会让你输入yes,然后回车,只要不报错,就成功了