[size=large]生成ssh key[/size]
生成并添加第一个ssh key
第一次使用ssh生成key,默认会在用户~(根目录)下生成 id_rsa, id_rsa.pub 2个文件;所以需要添加多个ssh key时也会生成对应的私钥和公钥
ssh-keygen -t rsa -C "youremail@yourcompany.com"
在Git Bash中执行这条命令一路回车,会在 ~/.ssh/ 目录下生成 id_rsa 和 id_rsa.pub 两个文件,用文本编辑器将 id_rsa_pub 中的内容复制一下粘贴到github(gitlab)上
生成并添加第二个ssh key
ssh-keygen -t rsa -C "youremail@gmail.com"
注意不要一路回车,要给这个文件起一个名字, 比如叫 id_rsa_github, 所以相应的也会生成一个 id_rsa_github.pub 文件。
在执行ssh-keygen的当前目录下找到id_rsa_github和id_rsa_github.pub文件,将其添加到.ssh/目录内
或者
添加私钥
ssh-add ~/.ssh/id_rsa
ssh-add ~/.ssh/id_rsa_github
如果执行ssh-add时提示"Could not open a connection to your authentication agent",可以现执行命令:
ssh-agent bash
然后再运行ssh-add命令。
# 可以通过 ssh-add -l 来确私钥列表
ssh-add -l
# 可以通过 ssh-add -D 来清空私钥列表
ssh-add -D
[size=large]修改配置文件[/size]
在 ~/.ssh 目录下新建一个config文件
vim config
添加内容:
# gitlab
Host gitlab.com
HostName gitlab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
[size=large]测试[/size]
ssh -T git@github.com
输出
Hi user! You've successfully authenticated, but GitHub does not provide shell access. 就表示成功的连上github了
推荐阅读
- 云原生微服务技术趋势解读
- 韵达基于云原生的业务中台建设 | 实战派
- python|8. 文件系统——文件的删除、移动、复制过程以及链接文件
- 运维|如何限制IP 通过 SSH连接服务器
- 运维|Linux 禁止用户或 IP通过 SSH 登录
- linux|apt update和apt upgrade命令 - 有什么区别()
- 服务器|用旧手机搭建服务器并实现内网穿透不需要root(本人亲测很多次最简单的一个)
- GitHub|7 款可替代 top 命令的工具
- Linux系统网络编程|Linux系统(权限管理)
- 企业实战|Linux 五种IO模型详细图解