SSH方式連接git----多SSH配置(MAC)

問(wèn)題:

多個(gè)git賬號(hào),用SSH方式連接,配置SSH的時(shí)候,會(huì)存在覆蓋問(wèn)題。

解決:

1.生成rsa

(1)$ ls ~/.ssh?

查看本地是否有rsa,若有且沒(méi)用,可以刪除($ rm -rf ~/.ssh

(2)$ ssh-keygen -t rsa -C your_git_mail -f ~/.ssh/id_rsa_github -b 4096

注:

[1]-C 后填寫(xiě)你git的郵箱 -f后填寫(xiě)rsa的路徑 -b后填寫(xiě)rsa的長(zhǎng)度(1024 2048 4096)

[2]多個(gè)git郵箱要生成多個(gè)rsa

[3]rsa會(huì)生成兩個(gè)文件:私鑰,公鑰(有后綴.pub)

2.添加私鑰

(1)$ ssh-add -l

查看ssh-agent中的私鑰,若有且無(wú)用,則可以刪除($ ssh-add -D)

(2)$ ssh-add ~/.ssh/id_rsa_github

將生成的rsa私鑰添加到ssh-agent中

3.遠(yuǎn)程添加公鑰

(1)$ cat ~/.ssh/id_rsa_github.pub

查看公鑰,然后將公鑰拷貝。(也可以通過(guò)終端的拷貝命令$ pbcopy < ~/.ssh/id_rsa_github.pub

(2)打開(kāi)git賬號(hào),然后添加公鑰。

路徑:Settings-->SSH and GPG keys-->New SSH key(有些gitlab的路徑不一定一致)

4.config配置

(1)$ vim ~/.ssh/config

配置config

(2)config的設(shè)置內(nèi)容

#github

Host github.com//git的域名

Identityfile ~/.ssh/id_rsa_github//對(duì)應(yīng)私鑰文件的路徑

IdentitiesOnly yes//防止提供不相關(guān)的密鑰

User xxx//git的userName

[1]多個(gè)git需要多個(gè)配置

5.測(cè)試

$?ssh -T git@github.com??

若成功,返回Welcome to xx, 'your username'?

$?ssh -vT git@github.com? (會(huì)返回debug的log)


坑:

Too many authentication failures for git。(git認(rèn)證失敗太多。)

ssh-agent中的rsa有問(wèn)題

[1]查看rsa $ ssh-add -l

[2]config配置?IdentitiesOnly yes

[3]建議清除ssh-agent中的rsa,然后重新配置。

拓展:

~/.ssh下有個(gè)known_hosts的文件。這個(gè)文件是記錄每個(gè)你訪問(wèn)git的公鑰。當(dāng)下次訪問(wèn)git時(shí),OpenSSH會(huì)核對(duì)公鑰。如果公鑰不同,OpenSSH會(huì)發(fā)出警告, 避免你受到DNS Hijack之類的攻擊。

如果多系統(tǒng)使用同一ip,登錄過(guò)一次后就會(huì)把ssh信息記錄在本地的~/.ssh/known_hsots文件中,切換該系統(tǒng)后再用ssh訪問(wèn)這臺(tái)主機(jī)就會(huì)出現(xiàn)沖突警告。?

有以下兩個(gè)解決方案:?

1. 手動(dòng)刪除修改known_hsots里面的內(nèi)容 (需要每次手動(dòng)刪除文件內(nèi)容,比較麻煩,但是安全性高)

2. 修改配置文件“~/.ssh/config”,加上這兩行。 (SSH連接時(shí)會(huì)忽略known_hsots的訪問(wèn),安全性降低)

StrictHostKeyChecking no?

UserKnownHostsFile /dev/null?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,551評(píng)論 19 139
  • 1. 安裝 Github 查看是否安裝git: $ git config --global user.name "...
    Albert_Sun閱讀 13,852評(píng)論 9 163
  • 一、Homebrew簡(jiǎn)介、安裝以及git安裝 Homebrew簡(jiǎn)稱brew,是Mac系統(tǒng)上軟件包的管理工具,能在M...
    程旭媛閱讀 2,917評(píng)論 1 1
  • 來(lái)源:三峽晚報(bào)、央視新聞、網(wǎng)絡(luò) 現(xiàn)在大部分夫妻結(jié)婚買房 一般是男方出首付,婚后一起還房貸 但是你們曉得不 就算房產(chǎn)...
    c86d4df3c7f2閱讀 310評(píng)論 0 0
  • 一直很喜歡梁詠琪的一首歌《短發(fā)》,但從來(lái)不敢想象自己剪個(gè)很短的短發(fā)是什么樣子,一張大餅?zāi)?,怎么可能呢。結(jié)果...
    素心5閱讀 250評(píng)論 0 0

友情鏈接更多精彩內(nèi)容