SSH免密登錄詳解

SSH免密登錄詳解

SSH(Security Shell)安全外殼協(xié)議线罕,是較為可靠的,專(zhuān)為遠(yuǎn)程登錄會(huì)話(huà)和其他網(wǎng)絡(luò)服務(wù)提供安全保證的協(xié)議店雅。

? 對(duì)于傳統(tǒng)的網(wǎng)絡(luò)服務(wù)程序(例如面褐,F(xiàn)TP,Telnet等)來(lái)說(shuō)太援,其本質(zhì)上并不是安全的,主要原因在于扳碍,這些網(wǎng)絡(luò)應(yīng)用程序在網(wǎng)絡(luò)上都是直接使用明文傳輸口令和數(shù)據(jù)的提岔,對(duì)于別有用心的人來(lái)說(shuō),這些口令和數(shù)據(jù)是很容易被截獲的笋敞。另外碱蒙,這些網(wǎng)絡(luò)服務(wù)程序的安全驗(yàn)證方式也是存在弱點(diǎn)的,非常容易受到中間人(Man-In-The-Middle)這種方式的攻擊夯巷,簡(jiǎn)而言之赛惩,就是中間人冒充真正的服務(wù)器接收你傳輸?shù)臄?shù)據(jù),然后趁餐,再將數(shù)據(jù)轉(zhuǎn)發(fā)給真正的服務(wù)器喷兼,通過(guò)這種方式中間人就可以神不知鬼不覺(jué)地拿到你所有數(shù)據(jù)。

? 通過(guò)使用SSH后雷,則可以將所有傳輸?shù)臄?shù)據(jù)及口令進(jìn)行加密季惯,從而防止中間人攻擊吠各,還可以防止DNS和IP欺騙,另外星瘾,使用SSH還有加快傳輸速度的好處走孽,原因在于惧辈,SSH是可以對(duì)數(shù)據(jù)進(jìn)行壓縮的琳状。

SSH安裝詳解

SSH是安全外殼協(xié)議,而open-ssh則是SSH的開(kāi)源實(shí)現(xiàn)盒齿,CentOS通常是默認(rèn)安裝了open-ssh的念逞。

整個(gè)SSH服務(wù)是包含SSH服務(wù)端(openssh-server)和SSH客戶(hù)端(openssh-clients)的,常用的ssh命令就是客戶(hù)端一部分边翁。

SSH服務(wù)端與SSH客戶(hù)端之間的關(guān)系:節(jié)點(diǎn)A想要控制節(jié)點(diǎn)B翎承,則節(jié)點(diǎn)A上需要安裝SSH客戶(hù)端,而節(jié)點(diǎn)B上需要安裝相應(yīng)的SSH服務(wù)端符匾,這樣叨咖,節(jié)點(diǎn)A才能向節(jié)點(diǎn)B發(fā)送控制命令和數(shù)據(jù)。

# 安裝openssh-server
[root@cos1 ~]# yum install -y openssh-server
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.ustc.edu.cn
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.ustc.edu.cn
Package openssh-server-7.4p1-21.el7.x86_64 already installed and latest version
# 啟動(dòng)openssh-server
[root@cos1 ~]# systemctl start sshd.service
# 安裝openssh-clients
[root@cos1 ~]# yum install -y openssh-clients
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.ustc.edu.cn
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.ustc.edu.cn
Package openssh-clients-7.4p1-21.el7.x86_64 already installed and latest version

openssh服務(wù)的主配置文件路徑:/etc/ssh/sshd_config啊胶。

# SSH-Server常見(jiàn)的配置項(xiàng)
# 如果SSH連接提示端口不可用甸各,可以在改文件中查看SSH端口,端口沒(méi)問(wèn)題焰坪,就要考慮SSH服務(wù)是否正常啟動(dòng)了
# SSH客戶(hù)端與服務(wù)端連接的默認(rèn)端口號(hào)
Port 22

默認(rèn)情況下趣倾,SSH服務(wù)提供了以下兩個(gè)非常有用的功能:

1、類(lèi)似Telnet遠(yuǎn)程連接服務(wù)器功能某饰,即SSH服務(wù)(安全可靠的遠(yuǎn)程登錄會(huì)話(huà)服務(wù))

# 遠(yuǎn)程連接服務(wù)
ssh user@hostname/ip

2儒恋、類(lèi)似FTP的sftp-server服務(wù),借助SSH協(xié)議來(lái)傳輸數(shù)據(jù)黔漂,提供更安全的SFTP服務(wù)(vsftp, proftp).

# 文件拷貝服務(wù)
scp files user@hostname:/path/

SSH免密登錄配置

? 對(duì)于分布式環(huán)境組件(例如诫尽,Hadoop,HBase等)來(lái)說(shuō)炬守,組件的主/從節(jié)點(diǎn)通常需要遠(yuǎn)程登錄到集群中其他節(jié)點(diǎn)并執(zhí)行Shell命令牧嫉,如果不使用SSH,則集群安全就無(wú)法保證劳较,使用SSH服務(wù)的話(huà)驹止,又需要用戶(hù)輸入目標(biāo)服務(wù)器的免密,而主/從節(jié)點(diǎn)何時(shí)訪問(wèn)其他節(jié)點(diǎn)是不可控的观蜗,而且臊恋,頻繁的需要用戶(hù)輸入密碼也是不可行的,這時(shí)候墓捻,免密登錄就非常重要的抖仅。

主機(jī)A通過(guò)SSH實(shí)現(xiàn)免密登錄主機(jī)B所需的配置過(guò)程大致可以分為以下兩步:

1坊夫、主機(jī)A在本地通過(guò)加密算法生成公鑰和私鑰

生成密鑰.png

通過(guò)rsa算法生成公鑰和私鑰key對(duì),默認(rèn)情況下撤卢,身份驗(yàn)證信息(也就是私鑰)保存在/user/.ssh/id_rsa文件下环凿,而公鑰信息則保存在/user/.ssh/id_rsa.pub文件中。

[root@cos1 .ssh]# pwd
/root/.ssh
[root@cos1 .ssh]# ll
total 8
-rw-------. 1 root root 1679 Jun 22 00:04 id_rsa
-rw-r--r--. 1 root root  391 Jun 22 00:04 id_rsa.pub

2放吩、將主機(jī)A的公鑰拷貝到主機(jī)B的授權(quán)文件(authorized_keys)中

# 通過(guò)ssh-copy-id命令將本地服務(wù)器公鑰上傳到指定服務(wù)器
[root@cos1 ~]# ssh-copy-id root@cos
... ... ... ... ... ... 
Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@cos'"
and check to make sure that only the key(s) you wanted were added.
# 現(xiàn)在智听,可以通過(guò)ssh root@cos訪問(wèn)主機(jī)cos了
[root@cos1 ~]# ssh root@cos
Last login: Thu Jun 18 06:38:25 2020 from 192.168.58.1
[root@cos ~]# 

為了安全起見(jiàn),通常將保存具體哪些主機(jī)可以免密訪問(wèn)當(dāng)前主機(jī)的授權(quán)文件authorized_keys文件設(shè)置為及root具有查看和修改的權(quán)限渡紫,用戶(hù)組及其他人無(wú)權(quán)訪問(wèn)到推。

通過(guò)ssh-copy-id將主機(jī)A的公鑰拷貝到主機(jī)B之后,本質(zhì)上惕澎,是在主機(jī)B的授權(quán)文件中添加了主機(jī)A的公鑰莉测。

[root@cos .ssh]# ll
total 8
-rw-------. 1 root root 781 Jun 22 00:16 authorized_keys
-rw-r--r--. 1 root root 176 Jun 18 07:34 known_hosts

注意:

1、免密登錄唧喉,是用戶(hù)對(duì)用戶(hù)的捣卤,切換為其他用戶(hù)時(shí),仍需要輸入密碼

2八孝、免密登錄是單向的董朝,也就是說(shuō),主機(jī)A將公鑰拷貝到主機(jī)B后唆阿,主機(jī)A可以免密登錄主機(jī)A益涧,而主機(jī)B登錄主機(jī)A時(shí)仍然需要輸入密碼

圖解SSH免密登錄原理

通過(guò)上面一頓操作,主機(jī)A就可以免密登錄到主機(jī)A了驯鳖,感覺(jué)有點(diǎn)神奇闲询,那么,免密登錄到底是怎么實(shí)現(xiàn)的呢浅辙?也就是說(shuō)扭弧,SSH協(xié)議又到底是什么樣子呢?且看下圖分解~

免密登錄原理.png

上圖便是整個(gè)SSH免密登錄的配置及原理圖:

1记舆、ServerA生成公鑰并上傳到ServerB上

2鸽捻、Step 1: ServerA發(fā)送鏈接請(qǐng)求到ServerB

3、Step 2: ServerB在authorized_key中檢索ServerA的公鑰泽腮,隨機(jī)生成字符串御蒲,隨后利用公鑰對(duì)字符串進(jìn)行加密,并發(fā)送給ServerA

4诊赊、Step 3: ServerA接收到密文后厚满,利用私鑰進(jìn)行解密,并將內(nèi)容以明文的形式發(fā)送給ServerB

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末碧磅,一起剝皮案震驚了整個(gè)濱河市碘箍,隨后出現(xiàn)的幾起案子遵馆,更是在濱河造成了極大的恐慌,老刑警劉巖丰榴,帶你破解...
    沈念sama閱讀 219,366評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件货邓,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡四濒,警方通過(guò)查閱死者的電腦和手機(jī)换况,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)峻黍,“玉大人复隆,你說(shuō)我怎么就攤上這事∧飞” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,689評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵惭每,是天一觀的道長(zhǎng)骨饿。 經(jīng)常有香客問(wèn)我,道長(zhǎng)台腥,這世上最難降的妖魔是什么宏赘? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,925評(píng)論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮黎侈,結(jié)果婚禮上察署,老公的妹妹穿的比我還像新娘。我一直安慰自己峻汉,他們只是感情好贴汪,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,942評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著休吠,像睡著了一般扳埂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上瘤礁,一...
    開(kāi)封第一講書(shū)人閱讀 51,727評(píng)論 1 305
  • 那天阳懂,我揣著相機(jī)與錄音,去河邊找鬼柜思。 笑死岩调,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的赡盘。 我是一名探鬼主播号枕,決...
    沈念sama閱讀 40,447評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼亡脑!你這毒婦竟也來(lái)了堕澄?” 一聲冷哼從身側(cè)響起邀跃,我...
    開(kāi)封第一講書(shū)人閱讀 39,349評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蛙紫,沒(méi)想到半個(gè)月后拍屑,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,820評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡坑傅,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,990評(píng)論 3 337
  • 正文 我和宋清朗相戀三年僵驰,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唁毒。...
    茶點(diǎn)故事閱讀 40,127評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蒜茴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出浆西,到底是詐尸還是另有隱情粉私,我是刑警寧澤,帶...
    沈念sama閱讀 35,812評(píng)論 5 346
  • 正文 年R本政府宣布近零,位于F島的核電站诺核,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏久信。R本人自食惡果不足惜窖杀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,471評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望裙士。 院中可真熱鬧入客,春花似錦、人聲如沸腿椎。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,017評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)酥诽。三九已至鞍泉,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間肮帐,已是汗流浹背咖驮。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,142評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留训枢,地道東北人托修。 一個(gè)月前我還...
    沈念sama閱讀 48,388評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像恒界,于是被迫代替她去往敵國(guó)和親睦刃。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,066評(píng)論 2 355