1. 程式人生 > >Telnet、Mstsc、SSH之間的比較和區別

Telnet、Mstsc、SSH之間的比較和區別

 今天需要用telnet到IBM伺服器的交換機模組上進行配置,但是當我開啟windows server 2008自帶的CMD輸入telnet命令之後,系統卻提示我“不是內部或外部命令也不是可執行的程式或批處理”。第一感覺是CMD功能失效了,於是又嘗試了ping的命令,奇怪的是ping功能可以正常使用。這時候我想到了可能是在windows7上telnet這個功能沒有被開啟。

實際上windows裡經常 telnet 服務是預設沒有安裝的。win7下開啟telnet為:控制面板-程式和功能-點選左上方的“開啟或關閉Windows功能”-telnet客戶端(你就可以使用telnet到其他機器。)telnet伺服器(允許其他使用者遠端telnet到本機)點確定,這時在services.msc的服務裡就可以看到telnet的服務,雙擊選擇手動-啟動該服務即可。順便研究了下什麼是telnet。說是遠端登陸的一種協議和方式,可是平時都是mstsc來進行遠端控制。習慣性的問問到底有什麼區別呢?既然是遠端訪問,那麼windows和linux之間是否也可以通過這些來相互遠端訪問?那麼SSH呢?順著這些問題,查了好多資料,下面談談我的理解。

Telnet:
Telnet是Teletype network的縮寫,現在已成為一個專有名詞,表示遠端登入協議和方式,分為Telnet客戶端和Telnet伺服器程式。Telnet可以讓使用者在本地Telnet客戶端上遠端登入到遠端Telnet伺服器上。Telnet一詞相信很多電腦愛好者朋友都比較陌生,因為普通電腦使用者很少會接觸到Telnet相關的東西,但在一些專業的伺服器場所或者一些特殊的電腦技巧中,會用到Telnet相關的東西。下面為大家介紹下Telnet是什麼以及有什麼用等基礎知識。

Telnet、Mstsc、SSH之間的比較和區別

   專業的說,Telnet是Internet上遠端登入的一種程式也可以理解為有一套標準協議;它可以讓您的電腦通過網路登入到網路另一端的電腦上,甚至還可以存取那臺電腦上的檔案。當然,不是每一臺電腦您都可以登入,前提是這臺電腦有對外開放或者是您必須擁有使用者帳號及密碼;最重要的是您與所想連線的電腦都得連上Internet。

Telnet是什麼協議?

Telnet伺服器軟體是我們最常用的遠端登入伺服器軟體,是一種典型的客戶機/伺服器模型的服務,它應用Telnet協議來工作。那麼,什麼是Telnet協議?它都具備哪些特點呢?

Telnet是位於OSI模型的第7層—應用層上的一種協議,是一個通過建立虛擬終端提供連線到遠端主機終端模擬的TCP/IP協議。就是說他是一種基於TCP的應用層協議。這一協議需要通過使用者名稱和口令進行認證,是Internet遠端登陸服務的標準協議。應用Telnet協議能夠把本地使用者所使用的計算機變成遠端主機系統的一個終端。它提供了三種基本服務:

1)Telnet定義一個網路虛擬終端為遠端系統提供一個標準介面。客戶機程式不必詳細瞭解遠端系統,他們只需構造使用標準介面的程式;

2)Telnet包括一個允許客戶機和伺服器協商選項的機制,而且它還提供一組標準選項;

3)Telnet對稱處理連線的兩端,即Telnet不強迫客戶機從鍵盤輸入,也不強迫客戶機在螢幕上顯示輸出。

Telnet有什麼用?

Telnet提供遠端登入功能,使得使用者在本地主機上執行Telnet客戶端,就可登入到遠端的Telnet伺服器. 在本地輸入的命令可以在伺服器上執行,伺服器把結果返回到本地,如同直接在伺服器控制檯上操作. 這樣就可以在本地遠端操作和控制伺服器。

1)在使用者終端與遠端主機之間建立一種有效的連線;

2)可以共享主機上的軟體和資料資源;

3)可以利用遠端主機上提供的資訊查詢服務進行資訊查詢;

Telnet系統組成?

Telnet由客戶軟體、伺服器軟體以及telnet通訊協議等三部分組成。

Telnet客戶軟體執行在使用者的計算機上。當用戶執行Telnet命令進行遠端登入時,客戶軟體將完成下列功能:

1)建立與遠端主機的TCP連線。它在一個周知的23號TCP埠上開啟一個套接字,如果遠端主機上的Telnet伺服器軟體一直在這個周知的埠上偵聽連線請求,則這個連線便會建立起來。

2)以終端方式為使用者提供人機介面。

3)將使用者輸入的資訊通過Telnet協議傳送給遠端主機。

4)接受遠端主機發送來的資訊,並經過適當的轉換顯示在使用者計算機的螢幕上。

遠端主機必須執行Telnet伺服器軟體,這樣才能提供Telnet遠端登入服務。Telnet伺服器軟體將完成下列功能:

1)通知網路系統已做好提供遠端連線服務的準備。

2)不斷地在周知的23號TCP埠上偵聽使用者的連線請求。

3)處理使用者的請求。

4)將處理的結果通過Telnet協議返回給客戶程式。

5)繼續偵聽使用者的請求。

telnet本身是一種協議,所以在windows和linux之間是可以相互遠端的。

Telnet與mstsc的區別
Telnet本身是一種應用層協議,故在使用Telnet時可以把它看成是一種系統命令。而且是是黑客的常用手法之一,且不會講原有的操作使用者踢下來(就是說你登陸了,別人都不知道),然而用mstsc登陸的話,就必須將現在正在使用的使用者踢下來才可以。

TELNET一般是登入開放Telnet服務的機器的23埠;最老牌的TELNET軟體為NetTerm,目前版本為4.2.e.4。

兩者最明顯的區別是登陸方式不同,TELNET 是文字方式的登陸,命令列操作;MSTSC是圖象介面操作。

SSH:
Telnet服務雖然使用方便,但由於其安全性不高,因此目前通常使用SSH(Secure Shell)代替Telnet進行遠端管理。SSH是一個在應用程式中提供安全通訊的協議,通過SSH可以安全地訪問伺服器,因為SSH基於成熟的公鑰加密體系,把所有傳輸的資料進行加密,保證資料在傳輸時不被惡意破壞、洩露和篡改。SSH還是用了多種加密和認證方式,解決了傳輸中資料加密和身份認證的問題,能有效防止網路嗅探和IP欺騙等攻擊。

使用Telnet這個用來訪問遠端計算機的TCP/IP協議以控制你的網路裝置相當於在離開某個建築時大喊你的使用者名稱和口令。很快會有人進行監聽,並且他 們會利用你安全意識的缺乏。傳統的網路服務程式如:ftp、pop和telnet在本質上都是不安全的,因為它們在網路上用明文傳送口令和資料,別有用心 的人非常容易就可以截獲這些口令和資料。而且,這些服務程式的安全驗證方式也是有其弱點的,就是很容易受到“中間人”(man-in-the- middle)這種方式的攻擊。所謂“中間人”的攻擊方式,就是“中間人”冒充真正的伺服器接收你的傳給伺服器的資料,然後再冒充你把資料傳給真正的服務 器。伺服器和你之間的資料傳送被“中間人”一轉手做了手腳之後,就會出現很嚴重的問題。
SSH是替代Telnet和其他遠端控制檯管理應用程式的行業標準。SSH命令是加密的並以幾種方式進行保密。
在使用SSH的時候,一個數字證書將認證客戶端(你的工作站)和伺服器(你的網路裝置)之間的連線,並加密受保護的口令。SSH1使用RSA加密密 鑰,SSH2使用數字簽名演算法(DSA)金鑰保護連線和認證。加密演算法包括Blowfish,資料加密標準(DES),以及三重DES(3DES)。 SSH保護並且有助於防止欺騙,“中間人”攻擊,以及資料包監聽。
通過使用SSH把所有傳輸的資料進行加密,這樣“中間人”這種攻擊方式就不可能實現了,而且也能夠防止DNS和IP欺騙。還有一個額外的好處就是傳輸的數 據是經過壓縮的,所以可以加快傳輸的速度。SSH有很多功能,它既可以代替telnet,又可以為ftp、pop、甚至ppp提供一個安全的“通道”。