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 选项指定):

  1. ssh -i ./id_rsa root@192.168.100.39
  2. 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 上安装使用;

参考链接:https://github.com/PowerShell/Win32-OpenSSH

gitlab 和 github 配置 SSH Keys的更多相关文章

  1. window下配置SSH连接GitHub、GitHub配置ssh key(转)

    转自:http://jingyan.baidu.com/article/a65957f4e91ccf24e77f9b11.html 此经验分两部分: 第一部分介绍:在windows下通过msysGit ...

  2. window下配置SSH连接GitHub、GitHub配置ssh key

    window下配置SSH连接GitHub.GitHub配置ssh key   此经验分两部分: 第一部分介绍:在windows下通过msysGit(Git for windows.Git Bash)配 ...

  3. 为GitLab帐号添加SSH keys并连接GitLab

    https://blog.csdn.net/xyzchenxiaolin/article/details/51852333 为github帐号添加SSH keys使用git clone命令从GitLa ...

  4. 七、配置ssh keys连通github跟ssh-agent

    jenkins+github配置完成后,能够实现在提交pull request或者直接push时,能够将提交的代码拉去一份到服务器本地,并自动merge:但是代码拉去下来了,部署环境的时候却需要输入登 ...

  5. 同一台电脑使用 gitlab 和 github 配置

    Git 客户端与服务器端的通信支持多种协议,ssh 最常用.ssh的公钥登录流程,用户将自己的公钥存储在远程主机,登录时,远程主机会向用户发送一条消息,用户用自己的私钥加密后,再发给服务器.远程主机用 ...

  6. GitHub 添加 SSH keys

    首先在本地创建 SSH Keys $ ssh-keygen -t rsa -C "18817801185@163.com" 后面的邮箱即为 github 注册邮箱,之后会要求确认路 ...

  7. Github 配置 SSH

    HTTPS方式管理的直接输入登录用户名和密码就可以.下面介绍SSH的方式. mac系统为例,官方ssh参考:https://help.github.com/articles/generating-ss ...

  8. Github配置SSH连接

    安装git.exe,打开Git Bash 1.检查是否已经有SSH Key. $cd /.ssh 2.生成一个新的SSH. $ ssh-keygen -t rsa -C "email@git ...

  9. Github配置SSH

    以前也配置过ssh,但是没有注意用法,在配置一次熟悉流程 检查本机是否有ssh key设置 $ cd ~/.ssh 或cd .ssh 如果没有则提示: No such file or director ...

随机推荐

  1. FF笔试题整理

    一.选择题 1.怎样能唯一确定一颗二叉树? [解析] 只要知道中序遍历顺序,再加上其余两个遍历中任意一个都可以唯一确定一个二叉树.如果不知道中序遍历顺序,则无法确定. [反例] A-B-C,A是跟,B ...

  2. 课程四(Convolutional Neural Networks),第四 周(Special applications: Face recognition & Neural style transfer) —— 2.Programming assignments:Art generation with Neural Style Transfer

    Deep Learning & Art: Neural Style Transfer Welcome to the second assignment of this week. In thi ...

  3. github相关指令学习

    正在廖雪峰官网学习关于git的相关知识,已经不是第一次来学习,但是忘得太快,索性这次边学边记录笔记,加深记忆,方便后期查看 1.找到一个合适的地方,鼠标右键 Git Bush Here ,新建文件夹, ...

  4. 从零开始学 Web 之 Vue.js(三)Vue实例的生命周期

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

  5. SQL 必知必会·笔记<13>插入数据

    INSERT 用来将行插入(或添加)到数据库表.插入有几种方式: 插入完整的行: 插入行的一部分: 插入某些查询的结果. 1.1 插入完整的行 存储到表中每一列的数据在VALUES 子句中给出,必须给 ...

  6. 微信小程序 - 入门指引

    稍微整了整微信小程序,还是有不少问题的,做个小总结吧 和以往一样,本次项目也放到了 Github 中,欢迎围观 star ~ 一.微信公众平台 - 小程序后台 1.申请小程序账号 官网注册 注册时所用 ...

  7. C++多重继承的构造执行顺序

    一个类,它可能有基类,也可能存在多个基类,这些类里面还可能是虚拟基类,并且在类的本身也可能存在对象成员.那么所涉及的这些类或对象成员会以什么样的顺序来调用它们各自的构造函数呢?今天我们就来举例分析下. ...

  8. https Java SSL Exception protocol_version

    在java代码中,使用HttpClient爬取https页面时,遇到了这个bug:javax.net.ssl.SSLException: Received fatal alert: protocol_ ...

  9. Java容器类源码分析之Iterator与ListIterator迭代器(基于JDK8)

    一.基本概念 迭代器是一个对象,也是一种设计模式,Java有两个用来实实现迭代器的接口,分别是Iterator接口和继承自Iterator的ListIterator接口.实现迭代器接口的类的对象有遍历 ...

  10. power of the test

    https://www.youtube.com/watch?v=UApFKiK4Hi8