gitlab 文档上给了很好的配置的例子:https://gitlab.com/help/ssh/README#locating-an-existing-ssh-key-pair
针对mac 下的使用方案,我的配置步骤如下:
生成公钥和私钥:
ssh-keygen -o -t rsa -b 4096 -C "email@example.com"
-C 表示 加一条注释,当你有很多keys 的使用,用来表示这一条是哪一个。
在配置过程中,会提示你生成密钥的路径默认是 ~/.ssh/id_rsa 文件,但是如果你在生成过程中,指定了新的路径,那么将在新的路径上生成你的公钥和私钥。
然后就上传你的公钥就好了。
修改SSH配置文件(~/.ssh/config):
# GitLab.com Host gitlab.com Preferredauthentications publickey IdentityFile ~/.ssh/gitlab_com_rsa # Private GitLab instance Host gitlab.company.com Preferredauthentications publickey IdentityFile ~/.ssh/example_com_rsa
文件中 IdentityFile 配置的就是你私钥的路径。Host 关键字,是用来匹配你的配置是针对哪个网站的配置。Host gitlab.com 表示支持的gitlab 的配置。
验证是否配置成功:
ssh -T git@gitlab.com
因为在登录的时候,gitlab 和 github 网站上都没有提供伪终端。所以我们使用-T 选项,来进制伪终端的分配,其实这种的选项可加可不加。
下面是两个网站的显示结果:
➜ .ssh ssh -T git@github.com Hi yaowenxu! You've successfully authenticated, but GitHub does not provide shell access. ➜ .ssh ssh -T git@github.com Hi yaowenxu! You've successfully authenticated, but GitHub does not provide shell access.
到这里就结束了,写篇文档的目的就是,防止以后再配置的时候,能够有个文档快速配置,不要重复劳动。本身没有啥技术含量。如果能够帮助到你,还是希望能够点个赞表示支持。
git 设置全局邮箱:https://www.cnblogs.com/vae860514/p/8203455.html
保持更新,转载请注明出处。https://www.cnblogs.com/xuyaowen/p/git-ssh-keys.html
------
2019年04月10日17:53:40
当创建多个公私钥的时候,我们选择可使用特定私钥登录(可以通过删除配置文件配置,也可以使用 -i 选项指定):
-
ssh -i ./id_rsa root@192.168.100.39
-
ssh root@192.168.100.39 -i ./id_rsa
参考链接:https://blog.csdn.net/nahancy/article/details/79059135
# 在windows 上,公钥的配置和linux 相同;
使用 windows 自身的ssh 进行按照上述步骤生成密钥;如果windows 自身的ssh 不能使用,可以在网上搜索安装 openssh 在windows 上安装使用;