手把手教你Mac上SSH多账号配置

1.SSH简介

SSH全称Secure Shell,是应用层上的一种安全协议,专为远程登录和其他网络服务提供安全性的一种协议.

2.SSH相比较HTTPS的优势

利用SSH协议可以有效防止远程管理过程中的信息泄露问题.SSH会把所有传输内容加密,防止“中间人”攻击.也能防止DNS欺骗和IP欺骗.另外SSH会压缩传输数据,实现更快的传输速度.

总结一下就是更快更安全.

3.配置SSH

使用SSH主要就是通过两个ssh key文件:id_ras_xx(私钥)和id_ras_xx.pub(公钥)实现的

1.首先打开终端输入命令 cd ~/.ssh进入到Mac上ssh目录,没有的话可以通过mkdir ssh创建一个ssh目录

2.生成ssh key

ssh-keygen -t rsa -C "[email protected]" #添加ssh key
Enter之后会出现以下界面,让你输入文件要保存的路径和名字,直接Enter的话会默认生成id_rsa.pub,因为接下来我们要设置多个平台账号的ssh,所以这里给他重新命一个新的名字,比如id_rsa_公司名_平台名 (id_rsa_alibaba_gitlab)

image.png

ps:此处的这个邮箱只是为了命名区分,不一定非是平台注册邮箱.

完成之后会让你输入密码,可以设置为空,直接Enter即可.看到下图内容出现就表示ssh key已经生成.~/.ssh目录就会新增两个id_rsa_xxxid_rsa_xxx.pub的文件.

image.png

3.ssh-key添加到ssh agent中

默认的话是会自动加入ssh agent中的,但是我们重命名了,需要手动加一下
ssh-add ~/.ssh/id_ras_xx_xx

4.在git服务器上添加公钥

把id_rsa_xx.pub里的内容复制拷贝到git服务器相应的位置即可.

至此,如果是采用默认命名的话SSH就已经可用了.但由于我们重命名了,还需要配置一下config才行.在~/.ssh目录下新建config文件,配置一下内容即可

# default user([email protected])
Host github.com
HostName github.com
Port 9418 //仅在需要指定端口是配置,否则不用添加Port配置
User git //用户
IdentityFile ~/.ssh/id_rsa_xxx //文件路径

ps: HOSTUser中的数据取自项目地址中的 git clone [email protected]:socketio/socket.io-client-swift.git中的[email protected]

4.一台设备多账号SSH配置

我们一般都会有很多不同的git账号,比如GitHub,Gitlab还有国内的gitee,大多数公司也还会使用自己内部的git服务器,那就会有多个账号,这种情况就需要我们在电脑上配置多个账号了.也不复杂,只需重复上述的步骤,然后配置下config即可.
config参考如下:

# default user([email protected])
Host github.com
HostName github.com
Port 9418 //仅在需要指定端口是配置,否则不用添加Port配置
User git //用户
IdentityFile ~/.ssh/id_rsa_xxx //文件路径

# second user([email protected])
Host github2
HostName github.com
User git
IdentityFile~/.ssh/id_rsa_xxx_xxx2

至此大功告成

你可能感兴趣的:(手把手教你Mac上SSH多账号配置)