同一台电脑关于多个SSH KEY管理

背景

我的Mac要求既可以提交代码到github,也可以提交代码到oschina,提交的时候都走ssh协议,但是默认情况下只能有一个ssh key(~/ssh)

生成公钥、私钥

$ ssh-keygen -t rsa -C "your_github_email@example.com"
保存到 `~/.ssh/id_rsa_github`

$ ssh-keygen -t rsa -C "your_oschina_email@example.com"
保存到 `~/.ssh/id_rsa_oschina`

配置ssh代理

// 查看系统ssh-key代理
$ ssh-add -l

// 如果系统已经有ssh-key 代理 ,执行下面的命令可以删除
$ ssh-add -D

// 把 ~/.ssh 目录下的2个私钥添加的 ssh-agent
$ ssh-add ~/.ssh/id_rsa_github
$ ssh-add ~/.ssh/id_rsa_oschina

// 在 .ssh 目录创建 config 配置文件
$ vim ~/.ssh/config
#  github 配置
Host github
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa_github

# oschina配置
Host oschina
    HostName git.oschina.net
    User git
    IdentityFile ~/.ssh/id_rsa_oschina

github公钥(~/.ssh/id_rsa_github.pub)配置到github SSH keys
oschina公钥(~/.ssh/id_rsa_oschina.pub)配置到oschina SSH 公钥管理

验证

// 查看ssh-key代理,会看到2条记录
$ ssh-add -l

// 访问github
$ ssh -T git@github.com
Hi �用户名! You have successfully authenticated, but GitHub does not provide shell access.

// 访问oschina
$ ssh -T git@git.oschina.net
Welcome to Git@OSC, �用户名!

参考:
同一台电脑关于多个SSH KEY管理
开源中国SSH Key

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容