《TCPIP工作原理教案第08章 遠(yuǎn)程登錄協(xié)議》由會員分享,可在線閱讀,更多相關(guān)《TCPIP工作原理教案第08章 遠(yuǎn)程登錄協(xié)議(21頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級,第三級,第四級,第五級,*,第,8,章 遠(yuǎn)程登錄協(xié)議,本章學(xué)習(xí)目標(biāo),理解,TELNET,的工作原理,理解網(wǎng)絡(luò)虛擬終端的基本概念,了解,TELNET,命令的構(gòu)成,了解另外兩種遠(yuǎn)程登錄協(xié)議:,Rlogin,與,SSH,遠(yuǎn)程登錄協(xié)議(,TELNET,),TELNET,的前身是美國高級研究計劃署開發(fā)出的遠(yuǎn)程通信網(wǎng)(,Telecommunications Network,,即,Telnet,)協(xié)議。,Telnet,應(yīng)用程序可以實現(xiàn)遠(yuǎn)程登錄的功能,即用戶可從本地計算機登錄到遠(yuǎn)程計算機上,然后可以在遠(yuǎn)程計算機上創(chuàng)建和保存文件,或使用遠(yuǎn)程計算機提供
2、的其他服務(wù)。,TELNET,是最早利用,Internet,連接提供的服務(wù)之一。,8.1,遠(yuǎn)程登錄,用戶可以通過網(wǎng)絡(luò)登錄到遠(yuǎn)程主機上,用戶計算機可以看作是虛擬終端,它可通過網(wǎng)絡(luò)直接操作遠(yuǎn)程主機的運行,為了保證系統(tǒng)的安全和記賬方便,登錄時系統(tǒng)通常會要求用戶輸入賬號與口令。,遠(yuǎn)程登錄可以看作是客戶端,服務(wù)器模式(,Client-Server Model,,簡稱,C-S,模式),用戶計算機可以看作是客戶端,遠(yuǎn)程主機是服務(wù)器。,遠(yuǎn)程登錄比一般的,C-S,模式具有更強的功能,因為用戶計算機成為虛擬終端之后,可以直接操作遠(yuǎn)程主機的運行,而不僅僅是運行某個服務(wù)程序。,8.1,遠(yuǎn)程登錄,TELNET,遠(yuǎn)程登錄服
3、務(wù)通??煞譃橐韵滤膫€過程:,(,1,)用戶調(diào)用本地計算機上的,TELNET,客戶端程序,本地客戶端與遠(yuǎn)程服務(wù)器建立,TCP,連接。用戶必須知道遠(yuǎn)程主機的,IP,地址或者域名。,(,2,)客戶端程序?qū)⒂脩糨斎氲挠脩裘?、口令,以及之后輸入的任何字符或命令?NVT,(,Network Virtual Terminal,)格式傳送到遠(yuǎn)程服務(wù)器。該過程實際上是從本地主機向遠(yuǎn)程主機發(fā)送,IP,數(shù)據(jù)報。,(,3,)客戶端程序?qū)⑦h(yuǎn)程服務(wù)器輸出的,NVT,格式的數(shù)據(jù)轉(zhuǎn)化為本地計算機能理解的格式,并顯示在屏幕上,顯示的內(nèi)容包括輸入命令的回顯和命令執(zhí)行結(jié)果。,(,4,)最后,本地用戶發(fā)出結(jié)束連接的命令,本地客戶端
4、撤消到遠(yuǎn)程服務(wù)器的,TCP,連接。,8.2 TELNET,協(xié)議,TELNET,協(xié)議是,TCP/IP,協(xié)議族里的一個遠(yuǎn)程終端協(xié)議,是,Internet,遠(yuǎn)程登陸服務(wù)的標(biāo)準(zhǔn)協(xié)議,使用,TELNET,協(xié)議可以在本地用戶的計算機與遠(yuǎn)程主機之間建立一條,TCP,連接,用戶輸入的每個字符都會傳送到遠(yuǎn)程主機,遠(yuǎn)程主機輸出的內(nèi)容也會傳回用戶計算機并顯示在屏幕上。,8.2.1 TELNET,的基本原理,TELNET,協(xié)議的建立基于三個基本原理:,網(wǎng)絡(luò)虛擬終端,NVT,協(xié)商原理,終端和進程的對稱觀,8.2.2 TELNET,的交互過程,TELNET,客戶端與服務(wù)器的交互過程,8.2.3,網(wǎng)絡(luò)虛擬終端,為支持異構(gòu)性
5、(在不同平臺和系統(tǒng)中的互操作性),,TELNET,協(xié)議定義了網(wǎng)絡(luò)虛擬終端,NVT,,即數(shù)據(jù)和命令序列在,Internet,上傳輸?shù)臉?biāo)準(zhǔn)表示方式,NVT,是客戶端,服務(wù)器模式的一種實現(xiàn),把連接的每一端都作為虛擬終端(邏輯,I/O,設(shè)備)對待,8.2.3,網(wǎng)絡(luò)虛擬終端,網(wǎng)絡(luò)虛擬終端(,NVT,)格式的概念,為了使遠(yuǎn)程主機能夠正確識別用戶輸入的信息,而用戶屏幕上也能正確顯示遠(yuǎn)程主機輸出的信息,,NVT,格式充當(dāng)了橋梁的作用,8.2.3,網(wǎng)絡(luò)虛擬終端,NVT,使用,7,位標(biāo)準(zhǔn),ASCII,碼來表示數(shù)據(jù),每個,7,位的字符都以,8,位(一個字節(jié))的格式發(fā)送,最高位固定為,1,當(dāng)用戶從本地鍵入普通字符時,
6、,NVT,將按其原始含義傳送,當(dāng)用戶鍵入組合鍵時,,NVT,將它轉(zhuǎn)化為特殊的,ASCII,字符在網(wǎng)絡(luò)上傳送,NVT,把兩個字符的序列,CR-LF,定義為標(biāo)準(zhǔn)行結(jié)束符,8.2.4 TELNET,命令,TELNET,命令格式如下:,IAC,幾乎全部,Telnet,命令都至少由,2,個字節(jié)組成:,第一個字節(jié),0 xFF,(十進制的,255,)稱為,IAC(Interpret As Command,,作為命令來解釋,),,是一個轉(zhuǎn)義字符,表示該字符后面的字節(jié)才是命令代碼,第二個字節(jié)包含了將要執(zhí)行命令的代碼,如果數(shù)據(jù)中包含取值為,255,的字節(jié),為了避免將其后的字節(jié)錯誤地解釋為命令,必須接連發(fā)送兩個取值
7、為,255,的字節(jié),命令,編碼,描述,IAC,(作為命令來解釋),255,表示跟在該命令之后的數(shù)據(jù)應(yīng)作為命令來解釋,DONT,254,表示選項參數(shù)指定的啟用選項的請求已被拒絕,DO,253,表示選項參數(shù)指定的啟用選項的請求已被接受,WONT,252,通知目標(biāo)計算機,選項參數(shù)指定的啟用選項的請求已被拒絕,WILL,251,通知目標(biāo)計算機,選項參數(shù)指定的啟用選項的請求已被接受,SB,(子協(xié)商開始),250,表示后面所跟的命令序列是某一選項的子協(xié)商,GA,(繼續(xù)),249,允許以半雙工通信方式傳輸,EL,(刪除當(dāng)前行),248,通知服務(wù)器刪除當(dāng)前行,EC,(刪除前一字符),247,通知服務(wù)器刪除前一
8、字符,AYT,(你還在嗎),246,客戶端發(fā)給服務(wù)器用于檢測服務(wù)器進程是否還在運行的命令,AO,(終止輸出),245,完成進程,但不向客戶發(fā)送輸出,IP,(中斷進程),244,中斷、終止或結(jié)束某個進程,BRK,(中斷),243,表示數(shù)據(jù)傳輸?shù)闹袛?DM,(數(shù)據(jù)標(biāo)記),242,SYNCH,的數(shù)據(jù)部分,NOP,(空操作),241,表示不對客戶端或服務(wù)進行任何操作,SE,(子協(xié)商結(jié)束),240,表示某一選項的子協(xié)商命令序列結(jié)束,EOR,(記錄結(jié)束),239,表示文件的最后一行已傳輸出去,SUSP,(暫停當(dāng)前處理),237,表示客戶端通知服務(wù)器掛起當(dāng)前正在進行的操作,EOF,(文件結(jié)束),236,表示
9、傳文件中的數(shù)據(jù)已全部傳輸出去,常用,TELNET,命令,8.2.5 TELNET,選項協(xié)商,由于,TELNET,兩端的計算機和操作系統(tǒng)的異構(gòu)性,使得,TELNET,不可能也不應(yīng)該嚴(yán)格規(guī)定每一個,TELNET,連接的詳細(xì)配置,否則將大大影響,TELNET,的適應(yīng)異構(gòu)性。因此,,TELNET,采用選項協(xié)商機制來解決這一問題,TELNET,選項協(xié)商命令格式如下:,IAC ,常用,TELNET,選項,8.2.5 TELNET,選項協(xié)商,選項,編碼,描述,Transmit Binary,(二進制傳輸),0,以,8,位二進制方式傳輸數(shù)據(jù),Echo,(回送),1,回送從另一端接收的數(shù)據(jù),Suppress G
10、o Ahead,(禁止,GA,),3,不再發(fā)送,GA,信號,Status,(狀態(tài)),5,發(fā)起交換,TELNET,選項的當(dāng)前狀態(tài),Timing Mark,(同步標(biāo)記),6,請求將同步標(biāo)記插入返回的流中以同步連接的兩端,Terminal Type,(終端類型),24,發(fā)起交換可能的終端類型并從中選擇最佳的終端類型,End of Record,(記錄結(jié)束),25,結(jié)束數(shù)據(jù)發(fā)送,Window Size,(窗口大小),31,發(fā)起協(xié)商數(shù)據(jù)流的窗口大小,Terminal Speed,(終端速度),32,發(fā)起協(xié)商數(shù)據(jù)交換速度,Remote Flow Control,(遠(yuǎn)程流量控制),33,發(fā)起協(xié)商在數(shù)據(jù)交換過
11、程中允許拒絕流量控制,Line-mode,(行模式),34,發(fā)起協(xié)商將在客戶端解釋終端字符(而不是在服務(wù)器端),8.2.5 TELNET,選項協(xié)商,客戶端與服務(wù)器之間進行,TELNET,通信時,可以在連接的任何時候進行選項協(xié)商,而不僅僅是在會話開始時,TELNET,的選項協(xié)商是對稱的,任何一端都可以發(fā)出協(xié)商請求,任何一端都可以接受或拒絕協(xié)商請求,為了啟用或禁用,TELNET,選項,客戶端與服務(wù)器通過,DO,、,DONT,、,WILL,和,WONT,命令來指示對方,8.2.6 TELNET,連接,TELNET,服務(wù)是基于,TCP,協(xié)議的,使用的服務(wù)端口是,23,服務(wù)器在,23,端口上監(jiān)聽客戶請求
12、,且可對不同用戶端口與服務(wù)器,23,端口之間的許多并發(fā)連接進行應(yīng)答,客戶端口可取任意大于,1024,的數(shù)值,TELNET,連接示意圖,8.3 Rlogin,Rlogin,是另一種遠(yuǎn)程登錄協(xié)議,為,UNIX,客戶端與服務(wù)器之間提供遠(yuǎn)程登錄功能,Rlogin,提供的遠(yuǎn)程登錄功能很簡單,但與,TELNET,較相似,兩者的區(qū)別主要在于進行端到端通信的方式和會話特性設(shè)置方面,Rlogin,協(xié)議需要使用,TCP,進行通信,服務(wù)端口是,513,8.3 Rlogin,Rlogin,遠(yuǎn)程登錄服務(wù)可分為四個過程:,用戶調(diào)用,Rlogin,命令請求連接,并提供遠(yuǎn)程主機的,IP,地址或名稱,服務(wù)器通過發(fā)送一個值為,0
13、,的,NULL,字符來確認(rèn)收到了客戶端發(fā)送的內(nèi)容,客戶端程序?qū)⒂脩翩I入的內(nèi)容發(fā)送給服務(wù)器,同時接收服務(wù)器返回的信息并顯示在用戶屏幕上,要退出,Rlogin,會話,可按,Ctrl+D,鍵或在新的一行輸入轉(zhuǎn)義字符(默認(rèn)的轉(zhuǎn)義字符是“,”,),8.4 SSH,SSH(Security Shell,,安全外殼,),最初是由芬蘭人,Tatu,Ylonen,開發(fā),解決了,rsh,和其他,r,工具的安全漏洞,因此很快得到流行,SSH,允許用戶登錄遠(yuǎn)程計算機并執(zhí)行命令,以及在計算機之間復(fù)制文件,提高了在不安全的信道和易受攻擊的操作系統(tǒng)下通信的安全性,在基于,SSH,的通信中,敏感數(shù)據(jù)如口令,是以加密的格式傳輸
14、的,使用,TCP/IP,協(xié)議時,,SSH,與端口,22,關(guān)聯(lián),目前,SSH,有兩種版本:,SSH1,和,SSH2,小結(jié),TELNET,是,TCP/IP,參考模型中的應(yīng)用層協(xié)議,實現(xiàn)了遠(yuǎn)程登錄的功能,使用戶可以像操作本地計算機一樣使用遠(yuǎn)程服務(wù)器。,TELNET,的建立基于三個原理:網(wǎng)絡(luò)虛擬終端、協(xié)商原理、終端和進程的對稱觀。,TELNET,提供了很多命令來控制服務(wù)器和客戶的交互過程,并通過選項協(xié)商以增強適應(yīng)異構(gòu)性。,Rlogin,是,UNIX,下的遠(yuǎn)程登錄工具,實現(xiàn)的功能比較簡單,由于其安全漏洞,應(yīng)用遠(yuǎn)沒有,TELNET,廣泛。,SSH,(安全外殼)協(xié)議是為了解決,r,工具的安全漏洞而提出來的,目前有,SSH1,和,SSH2,兩種互不兼容的版本,,SSH,工具已被廣泛使用。,