SSH協(xié)議功能簡述
有不少協(xié)議是進行網(wǎng)絡(luò)管理的相關(guān)內(nèi)容。那么在安全方面我們今天來介紹一下SSH協(xié)議。SSH協(xié)議介紹:什么是SSH? 傳統(tǒng)的網(wǎng)絡(luò)服務(wù)程序,如:ftp、pop和telnet在本質(zhì)上都是不安全的,因為它們在網(wǎng)絡(luò)上用明文傳送口令和數(shù)據(jù), 別有用心的人非常容易就可以截獲這些口令和數(shù)據(jù)。而且,這些服務(wù)程序的安全驗證方式也是有其弱點的, 就是很容易受到“中間人"(man-in-the-middle)這種方式的攻擊。所謂“中間人"的攻擊方式, 就是“中間人"冒充真正的服務(wù)器接收你的傳給服務(wù)器的數(shù)據(jù),然后再冒充你把數(shù)據(jù)傳給真正的服務(wù)器。 服務(wù)器和你之間的數(shù)據(jù)傳送被“中間人"一轉(zhuǎn)手做了手腳之后,就會出現(xiàn)很嚴(yán)重的問題。
SSH的英文全稱是Secure
SHell。通過使用SSH,你可以把所有傳輸?shù)臄?shù)據(jù)進行加密,這樣“中間人"這種攻擊方式就不可能實現(xiàn)了, 而且也能夠防止DNS和IP欺騙。還有一個額外的好處就是傳輸?shù)臄?shù)據(jù)是經(jīng)過壓縮的,所以可以加快傳輸?shù)乃俣?#65377; SSH有很多功能,它既可以代替telnet,又可以為ftp、pop、甚至ppp提供一個安全的“通道"。
最初SSH是由芬蘭的一家公司開發(fā)的。但是因為受版權(quán)和加密算法的限制,現(xiàn)在很多人都轉(zhuǎn)而使用OpenSSH。 OpenSSH是SSH協(xié)議的替代軟件,而且是免費的,可以預(yù)計將來會有越 來越多的人使用它而不是SSH。
SSH是由客戶端和服務(wù)端的軟件組成的,有兩個不兼容的版本分別是:1.x和2.x。 用SSH 2.x的客戶程序是不能連接到SSH 1.x的服務(wù)程序上去的。OpenSSH 2.x同時支持SSH 1.x和2.x。
SSH協(xié)議的安全驗證是如何工作的
從客戶端來看,SSH提供兩種級別的安全驗證。
第一種級別(基于口令的安全驗證)只要你知道自己帳號和口令,就可以登錄到遠(yuǎn)程主機。所有傳輸?shù)臄?shù)據(jù)都會被加密, 但是不能保證你正在連接的服務(wù)器就是你想連接的服務(wù)器。可能會有別的服務(wù)器在冒充真正的服務(wù)器, 也就是受到“中間人"這種方式的攻擊。
第二種級別(基于密匙的安全驗證)需要依靠密匙,也就是你必須為自己創(chuàng)建一對密匙,并把公用密匙放在需要訪問的服務(wù)器上。 如果你要連接到SSH服務(wù)器上,客戶端軟件就會向服務(wù)器發(fā)出請求,請求用你的密匙進行安全驗證。服務(wù)器收到請求之后, 先在你在該服務(wù)器的家目錄下尋找你的公用密匙,然后把它和你發(fā)送過來的公用密匙進行比較。如果兩個密匙一致, 服務(wù)器就用公用密匙加密“質(zhì)詢"(challenge)并把它發(fā)送給客戶端軟件。 客戶端軟件收到“質(zhì)詢"之后就可以用你的私人密匙解密再把它發(fā)送給服務(wù)器。
用這種方式,你必須知道自己密匙的口令。但是,與第一種級別相比,第二種級別不需要在網(wǎng)絡(luò)上傳送口令。
SSH協(xié)議第二種級別不僅加密所有傳送的數(shù)據(jù),而且“中間人"這種攻擊方式也是不可能的(因為他沒有你的私人密匙)。 但是整個登錄的過程可能需要10秒。