生成SSH密钥

进入SSH目录:cd ~/.ssh,如果有id_rsaid_rsa.pub 这两个文件,说明之前已经有了,可以直接使用,如果没有,就用下面的命令生成:(YOUR_EMAIL@YOUREMAIL.COM用自己的邮箱替换)

ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM"

生成成功后,获取该目录(~/.ssh)下的 id_rsa.pub 里面的内容,并添加到相应网站(如github或者gitlab)就行了。

测试是否添加成功

终端输入:ssh -T git@gitlab.com,GitHub的使用ssh T git@github.com

出入之后根据提示应该还会输入一个yes,之后就能看是否连接成功了,比如:

如何同时使用多个SSH公钥

假设你已经有了一套名为id_rsa的公秘钥,将要生成的公秘钥名称为gitlab,你也可以使用任何你喜欢的名字。记得把以下命令中的YOUR_EMAIL@YOUREMAIL.COM改为你的Email地址

ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM" -f ~/.ssh/gitlab

说明:-f后面的参数是自定义的SSH Key的存放路径,将来生成的公秘钥的名字分别是gitlab.pub和gitlab。其他的和上面生成密钥的步骤相同,只是多了下面的配置的步骤

在SSH用户配置文件~/.ssh/config中指定对应服务所使用的公秘钥名称,如果没有config文件的话就新建一个(vim ~/.ssh/config),并输入以下内容(可以添加多个):

1
2
3
Host gitlab.com www.gitlab.com

IdentityFile ~/.ssh/gitlab

参考链接: