使用config 來管理ssh的會話

使用config 來管理ssh的會話

通常利用 ssh 連接遠(yuǎn)程服務(wù)器樱调,一般都要輸入以下類型命令:

  ssh user@hostname -p port

如果擁有多個ssh賬號听隐,特別是像我這種喜歡在終端里直接ssh登錄荆责,
要記住每個ssh賬號的參數(shù)长酗,那是多么蛋疼的事情机隙。

還好纽谒,ssh提供一種優(yōu)雅且靈活的方式來解決這個問題证膨,就是利用
ssh的用戶配置文件config 管理 ssh 會話。ssh的用戶配置文件是
放在當(dāng)前用戶根目錄下的.ssh 文件夾里(~/.ssh/config, 不存在則新
創(chuàng)建一個), 其配置寫法如下


  Host 別名
    HostName  主機(jī)名
    Port      端口
    User      用戶名
    IdentityFile 密鑰文件的路徑

有了這些配置鼓黔,就可以這樣用ssh 登錄服務(wù)器了:


  ssh 別名

生成公鑰和密鑰

但是使用這種方式的前提是央勒,必須生成密鑰,并且將密鑰添加到服務(wù)器的
authorized_keys文件里澳化。

使用密鑰的好處就是省去每次ssh登錄服務(wù)器時都要輸入登錄密碼的操作崔步,

這里使用ssh-keygen 生成ssh密鑰。

  • 在 ~/.ssh/目錄下執(zhí)行

      ssh-keygen -t rsa
    

    直接一路回車即可
    最后會生成 id_rsa 的私鑰缎谷,和 id_rsa.pub 的公鑰井濒。

  • 把公鑰中的內(nèi)容復(fù)制到 authorized_keys 文件中,不存在則新創(chuàng)建一個

      scp ./id_rsa.pub user@remote_ip:~/.ssh/id_rsa_1010.pub
    

    然后登錄到遠(yuǎn)程服務(wù)器,把公鑰 id_rsa_1010.pub 的內(nèi)容復(fù)制到 authorized_keys 文件里

      cat id_rsa_1010.pub >> authorized_keys
    

    以ssh public key 的形式訪問眼虱,對當(dāng)前用戶根目錄的.ssh 文件夾里的目錄文件是要
    有一定的權(quán)限要求喻奥,之前遇到過ssh public key 配置好了,不過用public key 登錄驗證時
    無效捏悬。所以撞蚕,最好設(shè)下.ssh 目錄權(quán)限為700,authorized_keys 權(quán)限為600.

如果authorized_keys 不為 600的話过牙,ssh就登錄不上去甥厦。即使所有的配置都正確。

  chmod 700 ~/.ssh/
  chmod 600 authorized_keys

當(dāng)然寇钉,用密鑰的方式連接服務(wù)器是需要服務(wù)器上的ssh支持的刀疙,需要ssh的配置文件(默認(rèn)是在/etc/ssh/sshd_config)
里的 PubkeyAuthentication設(shè)置為yes.如果要改登錄的端口,直接把Port改成你想到的端口值就行扫倡。
修改完后重啟下ssh谦秧,配置就生效:

  /etc/init.d/ssh restart
  • 最后本地的config 如下

      Host cjb
        HostName   216.194.70.6
        Port       22
        User       user
        IdentityFile  ~/.ssh/cjb
    

    配置完成之后,就可以在終端直接輸入 ssh cjb 暢通無阻地連上遠(yuǎn)程的cjb服務(wù)器上了撵溃。

ssh 的原理

簡單的說疚鲤,SSH是一種網(wǎng)絡(luò)協(xié)議,用于計算機(jī)之間的加密登錄缘挑。

如果一個用戶從本地計算機(jī)集歇,使用SSH協(xié)議登錄另外一臺遠(yuǎn)程計算機(jī),我們就認(rèn)為语淘,這種登錄是安全的诲宇。
既是被中途截獲,密碼也不會泄露惶翻。

最早的時候姑蓝,互聯(lián)網(wǎng)通信都是明文通信,一旦被截獲维贺,內(nèi)容就暴露無疑它掂。1995年,芬蘭學(xué)著Tatu Ylonen
設(shè)計了SSH協(xié)議溯泣,將登錄信息全部加密虐秋,稱為互聯(lián)網(wǎng)安全的一個基本解決方案,迅速在全世界獲得推廣垃沦。
目前已經(jīng)稱為Linux系統(tǒng)的標(biāo)準(zhǔn)配置客给。

需要指出的是,SSH只是一種協(xié)議肢簿,存在多種實現(xiàn)靶剑,既有商業(yè)實現(xiàn)蜻拨,也有開源實現(xiàn)。本文針對的實現(xiàn)是
OpenSSH桩引,它是自由軟件缎讼,應(yīng)用非常廣泛。

SSH之所以能夠保證安全坑匠,原因在于它采用了公鑰加密血崭。

整個過程是這樣的。

  • 遠(yuǎn)程主機(jī)收到用戶的登錄請求厘灼,把自己的公鑰發(fā)給用戶夹纫。

  • 用戶使用這個公鑰,將登錄密碼加密之后设凹,發(fā)送回來舰讹。

  • 遠(yuǎn)程主機(jī)用自己的私鑰,解密登錄密碼闪朱。如果密碼正確月匣,就同意用戶登錄。

ssh 公鑰登錄

使用密碼登錄监透,每次都必須輸入密碼桶错,非常麻煩。好在SSH還提供了公鑰登錄胀蛮,可以省去輸入密碼的步驟。

所謂“公鑰登錄”糯钙,原理很簡單粪狼,就是用戶將自己的公鑰存在遠(yuǎn)程主機(jī)上。登錄的時候任岸,遠(yuǎn)程主機(jī)會向用戶
發(fā)送一段隨機(jī)字符串再榄,用戶用自己的私鑰加密后,再發(fā)回來享潜。遠(yuǎn)程主機(jī)用事先存儲的公約進(jìn)行解密困鸥,如果
成功,就證明用戶是可信的剑按,直接允許登錄shell疾就,不再要求密碼。

這種方法要求用戶必須提供自己的公約艺蝴,如果沒有現(xiàn)成的猬腰,直接使用ssh-keygen 生成一個。

authorized_keys文件

遠(yuǎn)程主機(jī)將用戶的公鑰猜敢,保存在登錄后的用戶主目錄的$HOME/.ssh/authorized_keys文件中姑荷。
公鑰是一段字符串盒延,只要把它追加在authorized_keys 文件的末尾就行!

參考

SSH原理與運(yùn)用(一):遠(yuǎn)程登錄

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末鼠冕,一起剝皮案震驚了整個濱河市添寺,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌懈费,老刑警劉巖畦贸,帶你破解...
    沈念sama閱讀 221,548評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異楞捂,居然都是意外死亡薄坏,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評論 3 399
  • 文/潘曉璐 我一進(jìn)店門寨闹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來胶坠,“玉大人,你說我怎么就攤上這事繁堡∩蛏疲” “怎么了?”我有些...
    開封第一講書人閱讀 167,990評論 0 360
  • 文/不壞的土叔 我叫張陵椭蹄,是天一觀的道長闻牡。 經(jīng)常有香客問我,道長绳矩,這世上最難降的妖魔是什么罩润? 我笑而不...
    開封第一講書人閱讀 59,618評論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮翼馆,結(jié)果婚禮上割以,老公的妹妹穿的比我還像新娘。我一直安慰自己应媚,他們只是感情好严沥,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著中姜,像睡著了一般消玄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上丢胚,一...
    開封第一講書人閱讀 52,246評論 1 308
  • 那天翩瓜,我揣著相機(jī)與錄音,去河邊找鬼嗜桌。 笑死奥溺,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的骨宠。 我是一名探鬼主播浮定,決...
    沈念sama閱讀 40,819評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼相满,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了桦卒?” 一聲冷哼從身側(cè)響起立美,我...
    開封第一講書人閱讀 39,725評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎方灾,沒想到半個月后建蹄,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡裕偿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評論 3 340
  • 正文 我和宋清朗相戀三年洞慎,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嘿棘。...
    茶點(diǎn)故事閱讀 40,488評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡劲腿,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出鸟妙,到底是詐尸還是另有隱情焦人,我是刑警寧澤,帶...
    沈念sama閱讀 36,181評論 5 350
  • 正文 年R本政府宣布重父,位于F島的核電站花椭,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏房午。R本人自食惡果不足惜矿辽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望歪沃。 院中可真熱鬧喇喉,春花似錦硅堆、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽液走。三九已至,卻和暖如春贾陷,著一層夾襖步出監(jiān)牢的瞬間缘眶,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評論 1 272
  • 我被黑心中介騙來泰國打工髓废, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留巷懈,地道東北人。 一個月前我還...
    沈念sama閱讀 48,897評論 3 376
  • 正文 我出身青樓慌洪,卻偏偏與公主長得像顶燕,于是被迫代替她去往敵國和親凑保。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評論 2 359

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

  • SSH原理與應(yīng)用 ssh在程序員的生活中還是非常常見的涌攻,ssh具有很多種功能欧引,也可以用在很多種場合。 什么是SSH...
    關(guān)瑋琳linSir閱讀 871評論 1 10
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理恳谎,服務(wù)發(fā)現(xiàn)芝此,斷路器,智...
    卡卡羅2017閱讀 134,696評論 18 139
  • SSH 為 Secure Shell 的縮寫因痛,由 IETF 的網(wǎng)絡(luò)小組(Network Working Group...
    shuff1e閱讀 1,771評論 1 11
  • ** SSH(安全外殼協(xié)議) **為 Secure Shell 的縮寫婚苹,由 IETF 的網(wǎng)絡(luò)小組(Network ...
    linfree閱讀 850評論 4 7
  • 為了讓兩個linux機(jī)器之間使用ssh不需要用戶名和密碼。所以采用了數(shù)字簽名RSA或者DSA來完成這個操作鸵膏。 ...
    Sunshine_Boys閱讀 5,277評論 0 4