Mac下如何生成ssh key

Posted ThomasYB

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mac下如何生成ssh key相关的知识,希望对你有一定的参考价值。

git是分布式的代码管理工具,远程的代码管理是基于ssh的,所以要使用远程的git则需要ssh的配置。简单的说,Git - 版本控制工具;Github是一个网站,提供给用户空间创建git仓储,保存用户的一些数据文档或者代码等;GitLab是基于Git的项目管理软件

       首先,使用代码管理工具把本地的代码上传到服务器时需要加密处理,加密传输的算法有很多种,git可使用rsa,rsa要解决的一个核心问题是,如何使用一对特定的数字,使其中一个数字可以用来加密,而另外一个数字可以用来解密。这两个数字就是你在使用git和github,gitlab的时候所遇到的public key也就是公钥以及private key私钥。

       其中,公钥就是那个用来加密的数字,这也就是为什么你在本机生成了公钥之后,要上传到github的原因。从github发回来的,用那公钥加密过的数据,可以用你本地的私钥来还原。如果你的key丢失了,不管是公钥还是私钥,丢失一个都不能用了,解决方法也很简单,删除原有的key,重新再生成一次,然后在github.com里再设置一次就行

在个人电脑生成ssh密钥后,会同时生成一个公开密钥和一个私有密钥,默认情况下在用户主目录下的.ssh目录中,密钥为id_rsa,公开密钥为id_rsa.pub。

密钥和公开密钥是共同使用的,协同开发中,一般会将公钥配置在服务器中,这样方便经常登录,也不需要输入密码,这是现在集群和各种云平台常用的登录方式,密钥在本地不被泄漏就非常安全。

步骤1.检查是否已经存在SSH Key

打开电脑终端,输入以下命令:

ls -al ~/.ssh      

会出现两种情况 ,如步骤2所示

步骤2. 生成/设置SSH Key

继续上一步可能出现的情况   

(1)情况一:终端出现文件id_rsa.pub 或 id_dsa.pub,则表示该电脑已经存在SSH Key,此时可继续输入命令:

pbcopy < ~/.ssh/id_rsa.pub     

这样你需要的SSH Key 就已经复制到粘贴板上了,然后进行步骤3

(2)情况二:终端未出现id_rsa.pub 或 id_dsa.pub文件,表示该电脑还没有配置SSH Key,此时需要输入命令:

ssh-keygen -t rsa -C "your_email@example.com"        

(注意,这里的  your_email@example.com  是你自己的邮箱,选一般的常用的邮箱即可,笔者当时用的是腾讯企业邮箱,就出现了一点小问题,所以不常用的邮箱一般不推荐)                                                                                                                                      默认会在相应路径下(/your_home_path)生成id_rsa和id_rsa.pub两个文件,此时终端会显示:

Generating public/private rsa key pair.                                                                          Enter file in which to save the key (/your_home_path/.ssh/id_rsa): 

连续回车即可,也可能会让你输入密码,密码就是你的开机密码 

此时再输入命令:ls -al ~/.ssh    就会出现id_rsa.pub 和 id_dsa.pub两个文件,然后重复情况一的步骤即输入以下命令再进行步骤3即可:

pbcopy < ~/.ssh/id_rsa.pub

步骤3.将SSH Key添加到GitLab中

        打开GitLab,  登录,找到左边栏有一个

以上是关于Mac下如何生成ssh key的主要内容,如果未能解决你的问题,请参考以下文章

Mac下如何生成ssh key

mac下生成ssh keys 并上传github仓储

如何删除SSH key-Mac 软件使用与分享

MAC如何生成SSH key与GitHub关联

MAC下配置多个SSH-KEY

Git mac 生成sshkey方法