一、實(shí)驗目的
1、 理解 Telnet 協(xié)議的工作原理;
2、 了解 Telnet 協(xié)議的常用命令;
3、 了解應用層協(xié)議與傳輸層協(xié)議的關(guān)系。
二、實(shí)驗內容
1、 學(xué)習 Telnet 協(xié)議的工作過(guò)程;
2、 學(xué)習 Telnet 的使用方法;
3、 了解 Telnet 命令.
三、實(shí)驗環(huán)境
其中一臺作為T(mén)elnet 客戶(hù)端 , 另外一臺主機作為T(mén)elnet 服務(wù)器
四、實(shí)驗流程
五、實(shí)驗原理
Telnet 是傳輸控制協(xié)議/因特網(wǎng)協(xié)議 (TCP/IP) 網(wǎng)絡(luò ) (例如Internet) 的登錄和仿真程序。它最初是由 ARPANET 開(kāi)發(fā)的,但是現在它主要用于 Internet 會(huì )話(huà)。它的基本功能是, 允許用戶(hù)登錄進(jìn)入遠程主機系統。起初,它只是讓用戶(hù)的本地計算機與遠程計算機連接,從而成為遠程主機的一個(gè)終端。 它的一些較新的版本在本地執行更多的處理,于是可以提供更好的響應, 并且減少了通過(guò)鏈路發(fā)送到遠程主機的信息數量。
1、 基本內容
Telnet 協(xié)議是 TCP/IP 協(xié)議族中的一員,是 Internet 遠程登陸服務(wù)的標準協(xié)議。應用 Telnet 協(xié)議能夠把本地用戶(hù)所使用的計算
機變成遠程主機系統的一個(gè)終端。它提供了三種基本服務(wù):
1) Telnet 定義一個(gè)網(wǎng)絡(luò )虛擬終端為遠的系統提供一個(gè)標準接口?蛻(hù)機程序不必詳細了解遠的系統, 他們只需構造使用標準接口的程序;
2) Telnet 包括一個(gè)允許客戶(hù)機和服務(wù)器協(xié)商選項的機制,而且它還提供一組標準選項;
3) Telnet 對稱(chēng)處理連接的兩端, 即 Telnet 不強迫客戶(hù)機從鍵盤(pán)輸入,也不強迫客戶(hù)機在屏幕上顯示輸出。
2、遠程登錄的工作過(guò)程
使用 Telnet 協(xié)議進(jìn)行遠程登陸時(shí)需要滿(mǎn)足以下條件: 在本的計算機上必須裝有包含 Telnet 協(xié)議的客戶(hù)程序; 必須知道遠程主機的Ip 地址或域名;必須知道登錄標識與口令。
Telnet 遠程登錄服務(wù)分為以下 4 個(gè)過(guò)程:
1) 本地與遠程主機建立連接。該過(guò)程實(shí)際上是建立一個(gè)TCP連接,用戶(hù)必須知道遠程主機的Ip地址或域名;
2) 將本地終端上 輸入的 用戶(hù)名和 口令及以后輸入的任何命令或字符以 NVT(Net Virtual Terminal) 格式傳送到遠程主機。該過(guò)程實(shí)際上是從本地主機向遠程主機發(fā)送一個(gè) IP 數據報;
3) 將遠程主機輸出的 NVT 格式的數據轉化為本地所接受的格式送回本地終端,包括輸入命令回顯和命令執行結果;
4) 最后,本地終端對遠程主機進(jìn)行撤消連接。該過(guò)程是撤銷(xiāo)一個(gè) TCP 連接。
3、Telnet 選項協(xié)商 :
Telnet 基于TCP傳輸協(xié)議,運行在應用層 . 提供了客戶(hù)至服務(wù)器的終端交互功能 .Telnet 使用一條TCP連接,不像 FTP,使用 TCP兩個(gè)連接 . TELNET服務(wù)器端使用的 PORT號為 23. 雙方在進(jìn)行 Telnet連接時(shí),要進(jìn)行選項協(xié)商 . 比如:使用字符方式 窗口的大小,終端的類(lèi)型都要進(jìn)行協(xié)商 . 而協(xié)商是通過(guò) TELNET所支持的命令來(lái)實(shí)現的。
TELNET的常用命令:
TELNET的常用選項代碼:
1(0x01) 回顯 (echo)
3(0x03) 抑制繼續進(jìn)行 ( 傳送一次一個(gè)字符方式可以選擇這個(gè)選項)
24(0x18) 終端類(lèi)型
31(0x1F) 窗口大小
32(0x20) 終端速率
33(0x21) 遠程流量控制
34(0x22) 行方式
36(0x24) 環(huán)境變量
雖然我們可以認為 Telnet 連接的雙方都是 NVT,但是實(shí)際上 Telnet連接雙方首先進(jìn)行交互的信息是選項協(xié)商數據。選項協(xié)商是對稱(chēng)的,也就是說(shuō)任何一方都可以主動(dòng)發(fā)送選項協(xié)商請求給對方。
對于任何給定的選項, 連接的任何一方都可以發(fā)送下面 4 種請求的任意一個(gè)請求。
1)WILL:發(fā)送方本身將激活 (enable) 選項。
2)DO:發(fā)送方想叫接收端激活選項。
3)WONT:發(fā)送方本身想禁止選項。
4)DON’T:發(fā)送方想讓接收端去禁止選項
由于 Telnet 規則規定,對于激活選項請求(如 1 和 2),有權同意或者不同意。而對于使選項失效請求(如3和4),必須同意。這樣,4 種請求就會(huì )組合出 6 種情況 . 選項協(xié)商需要 3 個(gè)字節:一個(gè) IAC字節,接著(zhù)一個(gè)字節是 WILL,DO,WONT和 DONT這四者之一, 最后一個(gè)ID 字節指明激活或禁止選項。
六 實(shí)驗步驟
步驟一:在兩個(gè)主機上分別安裝 Telnet 服務(wù) , 并打開(kāi)服務(wù) :
控制面板 >程序和功能 >啟動(dòng)或關(guān)閉 windows 功能 >Telnet 服務(wù)器,Telnet 客戶(hù)端 .
我的電腦 >管理 >服務(wù) >Telnet> 自動(dòng)
步驟二:使用協(xié)議分析器端捕獲數據, 從協(xié)議的角度分析該次 telnet
操作的完整過(guò)程:
1) 在主機 A 啟動(dòng)網(wǎng)絡(luò )協(xié)議分析儀進(jìn)行數據捕獲并設置過(guò)濾條件,在工具欄點(diǎn)擊“過(guò)濾器”按鈕,會(huì )彈出“設置 &過(guò)濾器”對話(huà)框,在“過(guò)濾器類(lèi)型” 中選擇“類(lèi)型過(guò)濾器”,類(lèi)型值中選擇 “telnet 協(xié)議”,如圖所示,點(diǎn)擊“設置參數”按鈕后“確定” 。
2) 在主機 A上運行界面 :telnet B 主機的IP
3) 在協(xié)議分析儀端捕獲數據,分析捕獲到的數據報文,查找常用命令;一次 Telnet 會(huì )話(huà)過(guò)程中會(huì )使用到多個(gè)命令, 注意這些命令的使用方法
步驟三:編輯一個(gè) Telnet 報文
1、在主機A上打開(kāi)協(xié)議數據發(fā)生器,在工具欄上選擇“添加”,會(huì )彈出“協(xié)議模版”對話(huà)框,選擇“ TELNET協(xié)議模版”,建立一個(gè)Telnet 數據報文,如圖所示。
2、 填寫(xiě)其中以太網(wǎng)幀頭、 IP 首部、 TCP 首部和 TELNET 報文的內容:
填寫(xiě)以太網(wǎng)協(xié)議首部信息:
目的物理地址: 在地址本中選擇主機 B 的 IP 地址,確認后選擇地址本中主機 B 的MAC地址: 00-D0-F8-2C-00-10;
源物理地址:在地址本中選擇主機 A,確認后自動(dòng)填入主機 A 的 MAC 地址: 02-00-4C-4F-4F-50 ;
類(lèi)型或長(cháng)度:該字段應為 0800( 即 IP 協(xié)議的類(lèi)型值 ) 。
填寫(xiě) IP 協(xié)議頭信息:
總長(cháng)度字段:包括TCP段內容的總長(cháng)度,20 IP+20 TCP+6 TELNET = 46;
高層協(xié)議字段:即上層協(xié)議類(lèi)型為 6(TCP 協(xié)議的類(lèi)型為 6) ;
發(fā)送 IP 地址:在地址本中選擇主機 A 的 IP 地址,確認后自動(dòng)填入主機 A 的 IP 地址;
目標IP地址:在地址本中選擇主機B的IP地址,確認后自動(dòng)填入主機B的IP地址
點(diǎn)擊工具欄中的―校驗和‖按鈕計算 IP 頭校驗和。
填寫(xiě)TCP協(xié)議的各個(gè)字段信息:
16 位源端口號:任意大于 1024 的數;
16 位目的端口號: 23;
32 位序號:選擇一個(gè)序號 ( 例如: 19425898);
32 位確認序號:設置為 0 ;
首部長(cháng)度:首部長(cháng)度設為 5 ,即長(cháng)度為 20 字節;
標志位:標志位設為 2 ,即標志位 SYN=1;
窗口大。喝我,例如填入 32768;
緊急指針: 0;
校驗和:點(diǎn)擊工具欄中的―校驗和‖按鈕計算TCP校驗和 ( 覆蓋 TCP首部 ( 包含偽首部 ) 和 TCP 數據兩部分,計算方法同 UDP 協(xié)議一樣 )
填寫(xiě) TELNET 協(xié)議報文的內容:
可填入Telnet 命令或者單字節的字母,例如構造一個(gè)傳輸Will命令的報文可填入FFFB 01 FF FB 03 。
最終的編輯結果如圖所示 :
3、 點(diǎn)擊工具欄上的“發(fā)送”按鈕,將編輯好的 Telnet 數據報文發(fā)送,可設置循環(huán)發(fā)送。
4、 在主機 A 上運行網(wǎng)絡(luò )協(xié)議分析儀,捕獲數據,捕獲結果如圖 所示,其中可以清晰地看到,這個(gè) TCP 報文的標志位是 SYN,里面攜帶的是 Telnet 報文,具體的 Telnet 命令是 Will :