日常工作中難免遇到開(kāi)發(fā)環(huán)境中需要配置不同的ssh-key對(duì)應(yīng)不同的環(huán)境,如同時(shí)在gitlab、github上項(xiàng)目在開(kāi)發(fā)。下面我們來(lái)看看具體的操作:
- 生成不同的SSH-Key
$ ssh-keygen -t rsa -C "youremail@yourcompany.com” -f ~/.ssh/id_rsa_github
在~/.ssh/目錄會(huì)生成id_rsa_github和id_rsa_github.pub私鑰和公鑰。 我們將id_rsa_github.pub中的內(nèi)容粘帖到github服務(wù)器的SSH-key的配置中.
- 添加私鑰
$ ssh-add ~/.ssh/id_rsa_github
如果執(zhí)行ssh-add時(shí)提示"Could not open a connection to your authentication agent",可以現(xiàn)執(zhí)行命令:
$ ssh-agent bash
然后再運(yùn)行ssh-add命令。
# 可以通過(guò) ssh-add -l 來(lái)確私鑰列表
$ ssh-add -l
# 可以通過(guò) ssh-add -D 來(lái)清空私鑰列表
$ ssh-add -D
-
修改配置文件
在 ~/.ssh 目錄下新建一個(gè)config文件
touch config
在config中添加如下內(nèi)容 vim config 添加內(nèi)容:
# 添加config配置文件
# 配置文件參數(shù)
# Host : Host可以看作是一個(gè)你要識(shí)別的模式,對(duì)識(shí)別的模式,進(jìn)行配置對(duì)應(yīng)的的主機(jī)名和ssh文件
# HostName : 要登錄主機(jī)的主機(jī)名
# User : 登錄名
# IdentityFile : 指明上面User對(duì)應(yīng)的identityFile路徑
# github
Host Build software better, together
HostName Build software better, together
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
# 按此格式可添加多個(gè)
- 目錄結(jié)構(gòu)
kevin@bogon:~/.ssh|? pwd
/Users/kevin/.ssh
kevin@bogon:~/.ssh|? ls -al
total 32
drwx------ 6 kevin staff 204 8 25 18:55 .
drwxr-xr-x+ 65 kevin staff 2210 8 25 22:10 ..
-rw-r--r-- 1 kevin staff 421 8 25 18:55 config
-rw------- 1 kevin staff 1679 8 25 18:37 id_rsa_github
-rw-r--r-- 1 kevin staff 399 8 25 18:37 id_rsa_github.pub