目录
将生成的 xxxx.pub 文件的内容,复制添加到对应的 git 上面
不管是linux还是 windows都是这样操作
不同的是 .ssh 文件夹的位置不一样而已,操作都是这样操作
linux 文件的存储位置为: /root/.ssh
windows 文件的存储位置为: C:\Users\Administrator\.ssh 但是在进行文件映射的时候 写成 /c/Users/Administrator/.ssh/gitlab_rsa
创建秘钥
在进行访问的时候默认查找的是 ~/.ssh/id_rsa 文件
如果在生成秘钥的时候,不指定文件名称则默认生成的是 id_rsa 和 id_rsa,pub 文件
-- 默认生成的是 id_rsa 和 id_rsa.pub
ssh-keygen -t rsa -C "13866667777@163.com"
进行多秘钥配置的时候,需要制定生成的文件的名称
-- 在文件夹中生成秘钥,直接点击确定,不用输入密码即可
ssh-keygen -t rsa -C "13866667777@163.com" -f /c/Users/Administrator/.ssh/gitlab_rsa
ssh-keygen -t rsa -C "13866667777@163.com" -f /c/Users/Administrator/.ssh/github_rsa
将生成的 xxxx.pub 文件的内容,复制添加到对应的 git 上面
创建 ~/.ssh/config 文件()
# 配置文件参数
# Host : Host可以看作是一个你要识别的模式,对识别的模式,进行配置对应的的主机名和ssh文件(可以直接填写ip地址)不能写成这样 https://github.com ,否则无法识别
# HostName : 要登录主机的主机名(建议与Host一致)
# User : 登录名(如gitlab的username)
# IdentityFile : 指明上面User对应的identityFile路径
Host gitlab.top
HostName gitlab.top
User 13849187852@163.com
IdentityFile /c/Users/Administrator/.ssh/gitlab_rsa
Host github.com
HostName github.com
User 13849187852@163.com
IdentityFile /c/Users/Administrator/.ssh/github_rsa
测试
-- 测试是否连接正常
ssh -T git@gitlab.com
ssh -T git@github.com
-- 如果测试失败,可以通过 -vT 查看详细信息,为什么失败
ssh -vT git@github.com
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
下面这些是我再进行多秘钥管理的时候摸索的内容,不用理会
配置 bash 窗口的秘钥(窗口关闭则失效)
-- 在打开的bash窗口添加私钥
ssh-agent bash
-- 添加私钥
ssh-add ~/.ssh/gitlab_rsa
ssh-add ~/.ssh/github_rsa
-- 或者
ssh-add ~/.ssh/github_rsa ~/.ssh/gitlab_rsa
-- 查看添加的秘钥
ssh-add -l
通过这种方式进行配置后,秘钥是基于bash窗口,在关闭bash窗口后,配置的秘钥就会失效
再打开一个新的bash 窗口,是无法正常进行连接的,需要在该窗口重新进行秘钥的添加(所以在进行秘钥生成的时候,对常用的git 生成 秘钥的时候,不进行文件的指定,默认生成为 id_rsa 和 id_rsa.pub 文件)