使用ssh為github/bitbucket實(shí)現(xiàn)免密碼登入

ssh

SSH--Secure SHell(安全外殼協(xié)議)

SSH是建立在應(yīng)用層和傳輸層基礎(chǔ)上钧唐,默認(rèn)端口是22逾柿,為遠(yuǎn)程登錄會話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議宅此。SSH是替代Telnet(默認(rèn)端口是23)和其他遠(yuǎn)程控制臺管理應(yīng)用程序的行業(yè)標(biāo)準(zhǔn)父腕。
SSH服務(wù)最早是由芬蘭的一家公司開發(fā)的UNIX系統(tǒng)上的一個程序,后來迅速擴(kuò)展到其他操作平臺萧诫,現(xiàn)在已經(jīng)發(fā)展到SSH2版本。SSH只是一種協(xié)議哑诊,存在多種實(shí)現(xiàn)镀裤,既有商業(yè)實(shí)現(xiàn)缴饭,也有開源實(shí)現(xiàn)。由于版權(quán)和加密算法等因素的影響担猛,很多人開始轉(zhuǎn)用開源免費(fèi)的openSSH(Linux/Mac OS X標(biāo)配)傅联。
SSH提供基于密鑰的認(rèn)證機(jī)制纺且,你必須為自己創(chuàng)建一對非對稱密鑰(public/private key pair)稍浆,并把公鑰放到需要訪問的服務(wù)器上進(jìn)行授權(quán)。SSH1使用RSA(RonRivest嫁艇、AdiShamir弦撩、LeonardAdleman)加密密鑰益楼,SSH2使用DSA(Digital Signature Algorithm,數(shù)字簽名算法)密鑰保護(hù)連接和認(rèn)證悯周。RSA和DSA這兩種加密算法都是非對稱加密算法陪竿。

所謂“SSH公鑰認(rèn)證免密碼登錄認(rèn)證機(jī)制”,原理如下:

  1. SSH客戶端提前將SSH公鑰儲存在遠(yuǎn)程SSH服務(wù)器上锐墙,然后SSH客戶端攜帶公鑰向遠(yuǎn)程SSH服務(wù)器(known_hosts)發(fā)起登錄請求长酗。
  2. 遠(yuǎn)程SSH服務(wù)器收到該請求之后,先在該服務(wù)器上的authorized_keys尋找你上傳授權(quán)過的公鑰刻盐,然后把它和你發(fā)送過來的公鑰進(jìn)行比較。
  3. 如果兩個公鑰一致(Key Exchange Success)馒疹,遠(yuǎn)程SSH服務(wù)器會向用戶發(fā)送一段使用SSH公鑰加密過的隨機(jī)字符串進(jìn)行身份質(zhì)詢(Challenge)。
  4. SSH客戶端用自己的私鑰解密后再發(fā)回給遠(yuǎn)程SSH服務(wù)器生均,遠(yuǎn)程SSH服務(wù)器對比回包中解密出來的隨機(jī)字符串是否一致马胧。如果一致衔峰,則證明用戶(公鑰或身份)是可信的,直接允許登錄shell,不再要求密碼寇钉。

版本

Mac OS X已經(jīng)集成了open-ssh

open-ssh的版本:

ssh -V
ssh -V

生成

使用以下命令生成

NikoXus-iMac:~ NikoXu$ssh-keygen -t rsa -C "${YourEmail}"

# "-t rsa"表示使用密鑰的加密類型,還可以為dsa评抚;-C設(shè)置注釋文字,比如你的郵箱“YourEmail”邢笙,不一定要是github注冊郵箱鸣剪,只作為一種標(biāo)示
Enter file in which to save the key (/Users/faner/.ssh/id_rsa): # 直接回車即選擇默認(rèn)路徑
Enter passphrase (empty for no passphrase):
# 輸入密鑰文件授權(quán)密碼,用于加密本地ssh-key债鸡,一般直接留空不加密
Enter same passphrase again:
# 確認(rèn)密鑰文件授權(quán)密碼
Your identification has been saved in /Users/faner/.ssh/id_rsa.
 # 生成的ssh私鑰路徑
Your public key has been saved in /Users/faner/.ssh/id_rsa.pub. 
#生成的ssh公鑰路徑
輸入生成ssh-keygen命令
keygen相關(guān)操作

獲取生成的ssh-key pub

從上一步驟設(shè)置的ssh文件路徑下找到id_rsa.pub文件

NikoXus-iMac:~ NikoXu$ cd  ~/.ssh/
NikoXus-iMac:.ssh NikoXu$ cat id_rsa.pub
從命令行里獲取ssh-key pub

復(fù)制生成的ssh-key pub,添加到github或bitbucket等網(wǎng)站相應(yīng)的接口告唆。

在bitbucket或github上添加ssh-key

以bitbucket為例

登入bitbucket,在bitbucket setting里找到 SSH 的設(shè)置模她。

添加ssh-key pub到bitbucket

測試ssh連接

以bitbucket為例

NikoXus-iMac:.ssh NikoXu$ ssh git@bitbucket.com

輸入后有如下提示

Are you sure you want to continue connecting (yes/no)? yes  
#接受認(rèn)可遠(yuǎn)程主機(jī)的公鑰(可以核對官方給出的公鑰指紋)
Warning: Permanently added 'bitbucket.com,104.192.143.8' (RSA) to the list of known hosts.  
#bitbucket.com服務(wù)器主機(jī)已經(jīng)得到認(rèn)可被添加到~/.ssh/known_hosts中侈净,可以執(zhí)行cat known_hosts查看該文件
測試結(jié)果

git 倉庫增加ssh 協(xié)議支持

進(jìn)入你的git倉庫畜侦,在你的倉庫添加ssh支持

NikoXus-iMac: NikoXu$ git remote add bitbucket git@bitbucket.org:Xniko/[your respositories].git

亦可用以下命令替換https協(xié)議

NikoXus-iMac: NikoXu$ git remote set-url bitbucket git@bitbucket.org:Xniko/[你的倉庫].git
在倉庫添加 ssh

查看git remote

NikoXus-iMac: NikoXu$ git remote -v

至此旋膳,可以在shell里使用ssh免密碼在github\bitbucket進(jìn)行相應(yīng)操作验懊。

查看 git remote

當(dāng)然ssh可以實(shí)現(xiàn)的不僅僅是讓git 免密訪問遠(yuǎn)程服務(wù)器鲁森。

bitbucket ssh 使用文檔
相關(guān)閱讀

(完)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末歌溉,一起剝皮案震驚了整個濱河市骑晶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌匙头,老刑警劉巖仔雷,帶你破解...
    沈念sama閱讀 216,651評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異电抚,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)俺祠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,468評論 3 392
  • 文/潘曉璐 我一進(jìn)店門借帘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人肺然,你說我怎么就攤上這事∥媪洌” “怎么了加叁?”我有些...
    開封第一講書人閱讀 162,931評論 0 353
  • 文/不壞的土叔 我叫張陵它匕,是天一觀的道長窖认。 經(jīng)常有香客問我,道長烧给,這世上最難降的妖魔是什么喝噪? 我笑而不...
    開封第一講書人閱讀 58,218評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮榴鼎,結(jié)果婚禮上晚唇,老公的妹妹穿的比我還像新娘。我一直安慰自己平项,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,234評論 6 388
  • 文/花漫 我一把揭開白布接癌。 她就那樣靜靜地躺著鸳粉,像睡著了一般。 火紅的嫁衣襯著肌膚如雪枯夜。 梳的紋絲不亂的頭發(fā)上艰山,一...
    開封第一講書人閱讀 51,198評論 1 299
  • 那天,我揣著相機(jī)與錄音摔吏,去河邊找鬼纵装。 笑死,一個胖子當(dāng)著我的面吹牛诗箍,可吹牛的內(nèi)容都是我干的挽唉。 我是一名探鬼主播,決...
    沈念sama閱讀 40,084評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼匠童,長吁一口氣:“原來是場噩夢啊……” “哼塑顺!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起首昔,我...
    開封第一講書人閱讀 38,926評論 0 274
  • 序言:老撾萬榮一對情侶失蹤糙俗,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后赊颠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,341評論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡顶猜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,563評論 2 333
  • 正文 我和宋清朗相戀三年长窄,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片挠日。...
    茶點(diǎn)故事閱讀 39,731評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡嚣潜,死狀恐怖椅贱,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情庇麦,我是刑警寧澤,帶...
    沈念sama閱讀 35,430評論 5 343
  • 正文 年R本政府宣布酸役,位于F島的核電站驾胆,受9級特大地震影響贱呐,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜驳阎,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,036評論 3 326
  • 文/蒙蒙 一馁蒂、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧饵隙,春花似錦沮脖、人聲如沸芯急。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,676評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至想鹰,卻和暖如春购披,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背刚陡。 一陣腳步聲響...
    開封第一講書人閱讀 32,829評論 1 269
  • 我被黑心中介騙來泰國打工歌殃, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蝙云,地道東北人。 一個月前我還...
    沈念sama閱讀 47,743評論 2 368
  • 正文 我出身青樓波材,卻偏偏與公主長得像身隐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子隙轻,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,629評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理玖绿,服務(wù)發(fā)現(xiàn)叁巨,斷路器,智...
    卡卡羅2017閱讀 134,652評論 18 139
  • 安得萬里風(fēng)秤标,飄飖吹我裳。唐 杜甫 《夏夜嘆》 摘要 目前使用 git 作為文件版本控制工具的開發(fā)者越來越多苍姜,同時一...
    FosterDylan閱讀 3,998評論 1 4
  • 有必要先來了解什么是SSH和什么是SSH key衙猪。 SSH Secure Shell (SSH) 是一個允許兩臺電...
    faner閱讀 47,327評論 1 48
  • 美與丑,善和惡垫释! 何以定,何為對显蝌? 人間距订咸,慧不同! 萬物生脏嚷,皆因果! 悟透之神郊,空明志趾唱。 ———丹題
    書得起閱讀 388評論 0 0
  • 正是人生最怕負(fù)欠感情債带欢,而因緣之線冥冥之中早有安排乔煞,萬般哪得由人!狄希陳未娶素姐前柒室,素姐是個大家閨秀,個性溫柔婉約...
    運(yùn)安閣閣主閱讀 208評論 0 0