《2021圖文簡(jiǎn)述TFTP簡(jiǎn)單文件傳輸協(xié)議實(shí)現(xiàn)過(guò)程》由會(huì)員分享,可在線閱讀,更多相關(guān)《2021圖文簡(jiǎn)述TFTP簡(jiǎn)單文件傳輸協(xié)議實(shí)現(xiàn)過(guò)程(9頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、圖文簡(jiǎn)述TFTP簡(jiǎn)單文件傳輸協(xié)議實(shí)現(xiàn)過(guò)程
圖文簡(jiǎn)述TFTP簡(jiǎn)單文件傳輸協(xié)議實(shí)現(xiàn)過(guò)程
本文將從概念、操作實(shí)例以及協(xié)議分析等幾個(gè)步驟來(lái)粗略理解TFTP協(xié)議。
通過(guò)本文,你可以了解到
◆什么是TFTP協(xié)議
◆TFTP作用及一般性用途
◆如何搭建TFTP并通過(guò)實(shí)例演示其工作過(guò)程
◆從協(xié)議角度分析TFTP傳輸過(guò)程
一、何為TFTP協(xié)議
TFTP協(xié)議,即為Trivial File Transfer Protocol,簡(jiǎn)單文件傳輸協(xié)議,它是TCP/IP協(xié)議簇中被用來(lái)在服務(wù)器和客戶機(jī)之間傳輸簡(jiǎn)單文件的協(xié)議,從名稱上來(lái)看似乎和我們常見(jiàn)的FTP協(xié)議很類似,其實(shí)兩者都是用來(lái)傳輸文件,但不同的是,T
2、FTP較FTP在傳輸文件體積方面要小得多,比較適合在需要傳送的小體積文件。比如在對(duì)CISCO設(shè)備進(jìn)行IOS升級(jí)或備份時(shí),就是通過(guò)此協(xié)議連接到CISCO 的TFTP服務(wù)器進(jìn)行相關(guān)操作。除此之外,TFTP操作也非常簡(jiǎn)單,功能也很有限,不能像FTP一樣實(shí)現(xiàn)例如身份驗(yàn)證、文件目錄查詢等諸多功能。
二、搭建并測(cè)試TFTP
1、獲取TFTP.EXE
這里通過(guò)一個(gè)實(shí)例來(lái)向大家演示如何在windows中搭建并使用TFTP服務(wù)器。
首先,我們需要獲取tftp.exe(請(qǐng)見(jiàn)附件1)。有兩個(gè)辦法可以獲得這個(gè)程序:1> 大家可以在windows XP 系統(tǒng)光盤中的i386文件夾中,利用expand命令從tft
3、p.ex_中提取tftp.exe程序。
2> 其實(shí)這個(gè)程序已經(jīng)被內(nèi)置在系統(tǒng)中,大家可以在C:\WINDOWS\system32中找到它。
2、搭建TFTP服務(wù)器
安裝TFTP服務(wù)器?聽上去似乎好困難,其實(shí)很簡(jiǎn)單,這里所謂的搭建TFTP服務(wù)器其實(shí)就是將TFTP.exe作為一個(gè)服務(wù)安裝在系統(tǒng)中,使之成為系統(tǒng)內(nèi)置的一個(gè)服務(wù),這樣為日后提供穩(wěn)定的TFTP傳輸打好基礎(chǔ)。
如何將一個(gè)程序變成Windows的服務(wù)呢?其實(shí)可以很多編程語(yǔ)言內(nèi)置有特定的方法可以實(shí)現(xiàn),但很顯然,這樣的辦法不具備普遍性,這里我想大家推薦一個(gè)小工具,它內(nèi)置于windows2000的Resource Kits,名為Srvinst
4、w,是一個(gè)圖形化的工具(請(qǐng)見(jiàn)附件2),操作也很簡(jiǎn)單。
我們就采用最通用的辦法來(lái)安裝TFTP服務(wù)。
具體安裝過(guò)程:
找到Srvinstw
運(yùn)行Srvinstw,在這里我們可以安裝一個(gè)服務(wù),或者是卸載系統(tǒng)中已存的服務(wù),只要點(diǎn)選【卸載服務(wù)】即可。
選擇【安裝服務(wù)】,然后點(diǎn)擊【下一步】
如果是想把服務(wù)安裝在遠(yuǎn)程一臺(tái)主機(jī)上,只需選擇【遠(yuǎn)程主機(jī)】并輸入主機(jī)名即可。這里我們選擇【本地主機(jī)】,然后點(diǎn)擊【下一步】
在【服務(wù)名稱】中輸入想在服務(wù)列表中顯示的名稱,我這里輸入的是TFTP,然后點(diǎn)擊【下一步】
這里點(diǎn)擊【瀏覽】找到tftp.exe程序,然后點(diǎn)擊【下一步】
默認(rèn)選擇【系統(tǒng)自帶服務(wù)】,然后
5、點(diǎn)擊【下一步】
默認(rèn)使用【系統(tǒng)帳戶】登陸此服務(wù)即可,然后點(diǎn)擊【下一步】
這里設(shè)置服務(wù)啟動(dòng)類型,我們選擇【自動(dòng)】,然后點(diǎn)擊【下一步】
確認(rèn)所安裝的服務(wù),點(diǎn)擊【完成】即可。
OK,到此位置,已經(jīng)將TFTP程序安裝至windows的系統(tǒng)服務(wù)中。
我們打開services.msc查看一下
盡管服務(wù)已經(jīng)安裝完畢,但默認(rèn)是停止?fàn)顟B(tài),需要手工啟動(dòng)此服務(wù)。
至此,TFTP服務(wù)器已搭建完畢,
3、測(cè)試TFTP服務(wù)器
測(cè)試TFTP服務(wù)器時(shí)需要用到TFTP命令,且該程序已經(jīng)內(nèi)置在XP系統(tǒng)中,所以我們可以直接通過(guò)命令行窗口運(yùn)行TFTP命令。
大家可以看到,TFTP的命令參數(shù)很少,也很簡(jiǎn)單,一般
6、命令格式如下
TFTP [-i] host [GET | PUT] source [destination]
參數(shù)詳解
-i :表示使用二進(jìn)制進(jìn)行文件傳輸
host :指定TFTP服務(wù)器的主機(jī)名或IP地址
GET | PUT :即為下載或上傳文件
最后兩個(gè)參數(shù)自然是指定源文件和目標(biāo)文件
測(cè)試環(huán)境很簡(jiǎn)單,安裝TFTP的服務(wù)器IP為192.168.1.100,在本地的C盤上有一個(gè)1.txt的文件,現(xiàn)在我們要將這個(gè)文件利用TFTP命令上傳到192.168.1.100上去。在本地運(yùn)行命令:
tftp -i 192.168.1.100 put c:\1.txt
如下圖:
可能有的朋友
7、會(huì)產(chǎn)生一個(gè)疑問(wèn),這條命令里并未指定目的地,那這個(gè)文件會(huì)傳到哪里呢,其實(shí)這里并不需要我們指定目的地,因?yàn)樵诿罱Y(jié)束后,TFTP服務(wù)器會(huì)自動(dòng)在系統(tǒng)根目錄,也就是C盤下建立一個(gè)tftpdroot的文件夾,上傳的文件會(huì)自動(dòng)保存在這個(gè)文件夾里。如下圖:
當(dāng)我們想從TFTP服務(wù)器上下載文件時(shí),只需要把文件放到這個(gè)目錄下,并用GET 命令下載即可,命令如下:
tftp -i 192.168.1.100 get down.txt e:\down.txt
如下圖:
同樣,這條命令也沒(méi)有指定具體的源路徑,只是指定了一個(gè)文件。
三、協(xié)議角度分析TFTP傳輸
從上面2個(gè)實(shí)例已經(jīng)看出TFTP協(xié)議傳輸過(guò)程非常
8、簡(jiǎn)單且,在傳輸小體積文件時(shí)候效率很高,下面我想從協(xié)議角度來(lái)分析TFTP上傳的過(guò)程。
基本環(huán)境介紹:
客戶機(jī):192.168.1.50
TFTP服務(wù)器:192.168.1.100
上傳文件:AAAA.TXT
協(xié)議分析工具:Wireshark 1.1.1
首先,運(yùn)行此命令,如下圖
從上圖可以看到文件順利傳輸,此時(shí)WIreshark已經(jīng)抓到相應(yīng)數(shù)據(jù)包,如下圖:
下面是協(xié)議分析過(guò)程第一個(gè)數(shù)據(jù)包:
第二個(gè)數(shù)據(jù)包:
第三個(gè)數(shù)據(jù)包:
第四個(gè)數(shù)據(jù)包:
通過(guò)分析這4個(gè)數(shù)據(jù)包,算是對(duì)TFTP上傳過(guò)程的一個(gè)簡(jiǎn)短的描述。
我們可以看到,TFTP通過(guò)69號(hào)端口進(jìn)行初始化連接,并依賴UDP協(xié)議進(jìn)
9、行數(shù)據(jù)傳輸,可見(jiàn)TFTP是一種無(wú)連接的協(xié)議類型。其實(shí)還有其他很多操作細(xì)節(jié)沒(méi)有說(shuō)到,包括TFTP的5種Opcode等等,如果想了解有關(guān)TFTP協(xié)議的更多細(xì)節(jié),請(qǐng)參考編號(hào)為1350的RFC文檔。
本文可能某些細(xì)節(jié)描述的不盡詳細(xì),若有錯(cuò)誤之處,不吝指教。
謝謝。
在Windows的操作系統(tǒng)中,有一個(gè)名為tftp的客戶端,很多駭客可以利用它去上傳一些攻擊工具………。這個(gè)服務(wù)原本是為了網(wǎng)絡(luò)文件傳輸服務(wù)的。沒(méi)想到卻變成了一顆“定時(shí)炸彈”,看到還是要把它給請(qǐng)出去為宜。
操作過(guò)程:
1.建立TFTP服務(wù)器
為了弄清楚TFTP客戶端究竟是如何工作的,我們可以首先建立了一個(gè)TFTP 服務(wù)器,看看它到底
10、能否真正實(shí)現(xiàn)文件傳輸。
在Win2000系統(tǒng)所在分區(qū)的system32/DLLCACHE目錄下找到一個(gè)名為“tftpd.exe”的文件,然后將tftpd.exe文件復(fù)制到system32目錄中。注意:若無(wú)法找到“DLLCACHE”目錄,可打開資源管理器,選擇“工具/文件夾選項(xiàng)/查看”,將“隱藏所保護(hù)的系統(tǒng)文件”前復(fù)選框的勾選去除即可。
在Win2000的Resource Kits(資源工具包)中找到工具instsrv.exe(如果沒(méi)有可從此鏈接下載:
進(jìn)入系統(tǒng)MS-DOS窗口,在系統(tǒng)提示符后輸入“E:/in stsrv.exe tftp
E:/Windows/system32/tftp
11、d.exe”(不含引號(hào)),敲回車鍵,即可出現(xiàn)服務(wù)添加成功的字樣。繼續(xù)在MS-DOS窗口中輸入“net start tftp”,按回車鍵,啟動(dòng)TFTP服務(wù)。注意:tftpd.exe是TFTP服務(wù)器端程序,tftp.exe是客戶端程序,這兩者不可混淆。
2.利用tftp客戶端上傳下載文件
在MS-DOS窗口中輸入“tftp -i 171.171.150.111 put install.log install.log”命令,其中“put”表示上傳文件,命令中的IP地址為本地IP 地址,“install.log”為自行選擇的一個(gè)文件。如果不出意外,便會(huì)看到傳輸成功的字樣及字節(jié)數(shù)。同時(shí)在根目錄中會(huì)出
12、現(xiàn)了一個(gè)“tftpdroot”子目錄,這便是在上傳文件時(shí)系統(tǒng)自動(dòng)創(chuàng)建的目錄。
而在MS-DOS窗口中輸入“tftp -i 171.171.150.111 get install.log”命令行,則可以下載服務(wù)器上的文件。
3.禁用tftp客戶端
看到這里,也許會(huì)有不少朋友會(huì)說(shuō),把tftp這個(gè)客戶端程序刪除不就可以了嗎?由于在Win2000操作系統(tǒng)中,“tftp.exe”是做為系統(tǒng)的關(guān)鍵程序而受到Windows File Protection(視窗文件保護(hù))保護(hù)的,所以根本無(wú)法直接更改,那么到底該如何解決這個(gè)問(wèn)題呢?
打開“%systemroot%/system32/drivers/et
13、c”目錄,比如
“C:/WINDOWS/system32/drivers/etc”,利用文本編輯工具打開其中名為“service”的文件,找到內(nèi)容中所對(duì)應(yīng)的“tftp”那一行。將“69/udp”替換成“0/udp”,保存并退出。
當(dāng)再次利用tftp客戶端進(jìn)行上傳下載時(shí),就會(huì)出現(xiàn)“ Connect request failed”這樣的提示,這說(shuō)明當(dāng)前已經(jīng)無(wú)法在命令行方式下進(jìn)行tftp的文件傳輸,“定時(shí)炸彈”終于被安全拆除了。
小知識(shí):FTP大家都不會(huì)感到陌生,而TFTP則是Win2000操作系統(tǒng)中的一個(gè)服務(wù),全稱是Trivial File Transfer Protocol(簡(jiǎn)單文件傳輸協(xié)議),主要是可以將文件傳輸?shù)秸谶\(yùn)行TFTP服務(wù)的遠(yuǎn)程計(jì)算機(jī)或從正在運(yùn)行TFTP服務(wù)的遠(yuǎn)程計(jì)算機(jī)傳輸文件。它可以看作是一個(gè)簡(jiǎn)化的FTP,與我們常見(jiàn)的FTP服務(wù)器相比,由于是系統(tǒng)自帶的服務(wù),使用起來(lái)比較方便,但由于沒(méi)有用戶權(quán)限管理功能,所以有安全隱患.