1、 SSH
SSH 為 Secure Shell 的縮寫,由 IETF 的網(wǎng)絡(luò)小組(Network Working Group)所制定;SSH 為建立在應(yīng)用層基礎(chǔ)上的安全協(xié)議。SSH 是目前較可靠,專為遠(yuǎn)程登錄會(huì)話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。利用 SSH 協(xié)議可以有效防止遠(yuǎn)程管理過程中的信息泄露問題。SSH最初是UNIX系統(tǒng)上的一個(gè)程序,后來又迅速擴(kuò)展到其他操作平臺(tái)。SSH在正確使用時(shí)可彌補(bǔ)網(wǎng)絡(luò)中的漏洞。SSH客戶端適用于多種平臺(tái)。幾乎所有UNIX平臺(tái)—包括HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其他平臺(tái),都可運(yùn)行SSH。
SSH驗(yàn)證:從客戶端來看,SSH提供兩種級(jí)別的安全驗(yàn)證。
第一種級(jí)別(基于口令的安全驗(yàn)證)
只要你知道自己帳號(hào)和口令,就可以登錄到遠(yuǎn)程主機(jī)。所有傳輸?shù)臄?shù)據(jù)都會(huì)被加密,但是不能保證你正在連接的服務(wù)器就是你想連接的服務(wù)器??赡軙?huì)有別的服務(wù)器在冒充真正的服務(wù)器,也就是受到“中間人”這種方式的攻擊。
第二種級(jí)別(基于密匙的安全驗(yàn)證)
需要依靠密匙,也就是你必須為自己創(chuàng)建一對(duì)密匙,并把公用密匙放在需要訪問的服務(wù)器上。如果你要連接到SSH服務(wù)器上,客戶端軟件就會(huì)向服務(wù)器發(fā)出請(qǐng)求,請(qǐng)求用你的密匙進(jìn)行安全驗(yàn)證。服務(wù)器收到請(qǐng)求之后,先在該服務(wù)器上你的主目錄下尋找你的公用密匙,然后把它和你發(fā)送過來的公用密匙進(jìn)行比較。如果兩個(gè)密匙一致,服務(wù)器就用公用密匙加密“質(zhì)詢”(challenge)并把它發(fā)送給客戶端軟件??蛻舳塑浖盏健百|(zhì)詢”之后就可以用你的私人密匙解密再把它發(fā)送給服務(wù)器。
用這種方式,你必須知道自己密匙的口令。但是,與第一種級(jí)別相比,第二種級(jí)別不需要在網(wǎng)絡(luò)上傳送口令。
2、SSH密鑰驗(yàn)證的機(jī)制

配置主機(jī)A免密登錄到主機(jī)B的方案有一下:
第一種:
1.在主機(jī)A生產(chǎn)密鑰對(duì): ssh-keygen -t rsa, 會(huì)在.ssh目錄下產(chǎn)生密鑰文件
2.拷貝主機(jī)A的公鑰到主機(jī)B: scp id_rsa.pub
3.將主機(jī)A的公鑰加到主機(jī)B的授權(quán)列表.ssh/authorized_keys(若不存在,手動(dòng)創(chuàng)建)執(zhí)行命令:
cat id_rsa.pub >> authorized_keys
4.授權(quán)列表authorized_keys的權(quán)限必須是600,chmod 600 authorized_keys
第二種
1. 進(jìn)入到我的home目錄 cd ~/.ssh
2. 執(zhí)行ssh-keygen -t rsa (四個(gè)回車)
3. 執(zhí)行完這個(gè)命令后,會(huì)生成兩個(gè)文件id_rsa(私鑰)、id_rsa.pub(公鑰)
4.將公鑰拷貝到要免登陸的機(jī)器上: ssh-copy-id localhost