github创建多个sshkey

自己有github账号,但是不怎么往上面存代码,很重要的原因是自己git玩得不是很溜,github越来越火,很多公司招聘都是要看github上的代码,很多开源代码也放在github上面,所以熟练掌握git github常用操作非常有必要

要实现远程代码上传和下载,需要设置sshkey,github官方指南介绍的比较详细,一步一步做下来没有问题。但如果你的电脑里面有了一个秘钥id_rsa,这个秘钥可能是你在公司用的git秘钥,只能在公司内网使用,那么这个密钥对应的代码托管地址应该是git.yourcompany.com,用户名是youraccount.yourcompany.com,显然跟你github托管地址和账号不一致。如果还是按照官方指南来做,肯定会把id_rsa覆盖,导致公司的git用不了。

所以需要创建多个sshkey,不同的key对应不同的源,可以方便地分别管理私人代码和公司代码,参考这两篇博客:
http://www.cnblogs.com/fanyong/p/3962455.html
http://www.cnblogs.com/zichi/p/4704824.html

通过官方指南生成密钥对后,可以看到相应生成的文件,在~/.ssh/目录中,xxx_rsa是私钥,xxx_rsa.pub是公钥,git源里面添加公钥内容,才允许本地上传代码到远端。其中id_rsa是默认sshkey,我的id_rsa设置为公司的git源,所以我按官方指南生成了新的github的sshkey。当我们git传代码时,git会使用默认的id_rsa的sshkey,而不知道github的sshkey,所以需要进行相应的配置。.ssh里面默认的配置文件为config,在.ssh目录里面添加新的config文件,打开编辑,我的config如下,其中id_rsa对应默认sshkey,github2_rsa对应自己github的sshkey。

\# git company
Host yourcompany.com
    HostName yourcompany.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa

\# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github2_rsa

.ssh目录内容如下所示:

LiLingyudeMacBook-Pro:.ssh lilingyu1$ ls -al
total 64
drwx------  10 lilingyu1  staff   340  9 26 20:35 .
drwxr-xr-x+ 43 lilingyu1  staff  1462  9 26 20:45 ..
-rw-r--r--   1 lilingyu1  staff   293  9 26 20:38 config
-rw-------   1 lilingyu1  staff  3326  9 26 20:35 github2_rsa
-rw-r--r--   1 lilingyu1  staff   747  9 26 20:35 github2_rsa.pub
-rw-------   1 lilingyu1  staff  1675  9  7 15:29 id_rsa
-rw-r--r--   1 lilingyu1  staff   426  9  7 15:29 id_rsa.pub
-rw-r--r--   1 lilingyu1  staff  2807  9 26 19:36 known_hosts
LiLingyudeMacBook-Pro:.ssh lilingyu1$ 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章