git SSH配置教程

2018-07-30  本文已影响14人  toro宇
SSH作用

当我们通过一个邮箱在Git上注册一个账号,自己创建仓库,或者进行协同开发时。 后面当改账号对库进行访问时,每次都要输入密码。 SSH的作用是 在你使用的电脑上生产一个代表改账号的令牌(将该令牌的.pub上传到你的账号)。这样每次访问仓库都通过这个令牌,不需要再输入密码那么麻烦,每个你使用的电脑都要这样操作一下。 SSH具体的配置请阅读:git上的教程

通过我们的开发是有多个git账号,以及不同的git平台。这样就设计到ssh的管理使用,下面就是对多个SSH进行管理的教程:

Multiple SSH Key

一个git账号 就要在本地电脑配置一个SSH Key. 当我们有多个git账号需要管理时.就需要分别配置不同的SSH key 并且在 ~/.ssh文件下配置 config 来管理.

一: 首先要懂得如果生成和配置SSH key , 步骤简单见:

https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/

二: 多个SSH key管理配置

  1. 生成一个公司用的SSH-Key

$ ssh-keygen -t rsa -C "youremail@yourcompany.com” -f ~/.ssh/id-rsa

在~/.ssh/目录会生成id-rsa和id-rsa.pub私钥和公钥。 我们将id-rsa.pub中的内容粘帖到公司gitlab服务器的SSH-key的配置中。

  1. 生成一个自己用的SSH-key

$ ssh-keygen -t rsa -C "youremail@your.com” -f ~/.ssh/github-rsa

在~/.ssh/目录会生成github-rsa和github-rsa.pub私钥和公钥。 我们将github-rsa.pub中的内容粘帖到github服务器的SSH-key的配置中。

  1. 添加私钥

$ ssh-add ~/.ssh/id_rsa $ ssh-add ~/.ssh/github_rsa

如果执行ssh-add时提示"Could not open a connection to your authentication agent",可以现执行命令:

 `$ ssh-agent bash`

然后再运行ssh-add命令。

`可以通过 ssh-add -l 来确私钥列表
$ ssh-add -l
可以通过 ssh-add -D 来清空私钥列表
$ ssh-add -D`
  1. 修改配置文件
    在 ~/.ssh 目录下新建一个config文件

    touch config

添加内容

 #company account
Host   github.com
        HostName github.com
       User toroYu
        IdentityFile ~/.ssh/id_rsa

#luckySlider account
Host    github.com
        HostName github.com
        User luckySlider
        IdentityFile ~/.ssh/id_rsa_luckySlider

  1. 测试

$ ssh -T git@github.com

参考文章:
https://gist.github.com/jexchan/2351996
https://my.oschina.net/stefanzhlg/blog/529403
https://stackoverflow.com/questions/4565700/specify-private-ssh-key-to-use-when-executing-shell-command/11251797#11251797

上一篇 下一篇

猜你喜欢

热点阅读