2017/12/19
? ??????昨天開(kāi)始想把之前的簡(jiǎn)單記賬號(hào)密碼項(xiàng)目重新有規(guī)劃的寫(xiě)一遍,并且按記錄傳上github辫红。由于公司用的是gitLab與sourceTree結(jié)合使用管理代碼。發(fā)現(xiàn)需要?jiǎng)?chuàng)建多個(gè)ssh,分別來(lái)管理gitLab和gitHub织堂。問(wèn)題就由此開(kāi)始凹髓。
? ? ? ? 回想剛?cè)肼殨r(shí)烁登,光配置git就花了不少時(shí)間,而且也一點(diǎn)都明白原理蔚舀,完全就是百度出來(lái)饵沧,依葫蘆畫(huà)瓢的锨络。通過(guò)這次動(dòng)手也明白了不少要點(diǎn)(雖然主要還是百度搜的)。特別是接觸到許多終端命令行狼牺。
? ? 首先是配置第一個(gè)ssh羡儿。
1、$ cd ~/.ssh? ? ? ? //~表示home目錄是钥,.開(kāi)頭的是隱藏文件
2掠归、$ ssh-keygen -t rsa -C"XXX@xxx.com"? ? ? ? //ssh-keygen命令 ssh生成
3、路徑默認(rèn)回車(chē)悄泥,設(shè)置密碼
4虏冻、finder 前往~/.ssh (或者 $ cat ~/.ssh/id_rsa.pub 打印出id_rsa.pub內(nèi)容)
5、id_rsa(ssh密鑰码泞,存儲(chǔ)在本地) id_rsa.pub(ssh公鑰兄旬,添加在遠(yuǎn)程git配置中)? ? ? ? //ssh密鑰認(rèn)證過(guò)程
6、在gitLab賬號(hào)中添加ssh(id_rsa.pub全部?jī)?nèi)容)
7余寥、ssh -vT git@github.com? ? ? ? //測(cè)試成功 git@XXX? ? ?XXX為git倉(cāng)庫(kù)url
? ? ? ? 配置第二個(gè)ssh
1领铐、2、步驟相同
3宋舷、Enter file in which to save the key (/Users/XXX/.ssh/id_rsa): id_rsa_github?? 更改存儲(chǔ)名id_rsa.myself,設(shè)置密碼
4绪撵、在github中添加ssh? ? ? ? (id_rsa_github.pub)
5、因?yàn)榇嬖趦蓚€(gè)id_rsa,在.ssh中添加config文件管理
6祝蝠、通過(guò)vim 創(chuàng)建config
添加內(nèi)容:
# Default gitlab user(XXX@xxx.com)
Host 192.XXX.X.XX
HostName 192.XXX.X.XX
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
# github user(XXX@126.com)
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
7音诈、測(cè)試?$ ssh -T git@github.com
Hi XXX! You've successfully authenticated, but GitHub does not provide shell access.
遺留問(wèn)題:雖然按網(wǎng)上說(shuō)的測(cè)試通過(guò),但因?yàn)閭€(gè)人使用sourceTree工具管理代碼绎狭,github的ssh推送仍為失斚附Α;是需要使用終端命令推送才能成功么儡嘶?還是先去學(xué)習(xí)終端命令吧喇聊。
還有一個(gè)問(wèn)題就是先前有看到存儲(chǔ)第二份ssh密鑰在 ~/.ssh/newfile中,然而在添加新文件路徑后蹦狂,終端存儲(chǔ)結(jié)果顯示為 no such file 誓篱??凯楔?
第一次試著寫(xiě)窜骄,有不對(duì)的地方還望見(jiàn)諒指出。
附錄:
Linux下ssh相關(guān)命令:ssh命令
主要內(nèi)容參考網(wǎng)上git多個(gè)ssh生成管理摆屯,就不一一列舉了邻遏。