您好,登錄后才能下訂單哦!
FTP工作原理是怎樣的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
FTP工作原理
文件傳輸協(xié)議:File Transfer Protocol 早期的三個應用級協(xié)議之一,基于C/S結構 數(shù)據(jù)傳輸格式:二進制(默認)和文本 雙通道協(xié)議:命令和數(shù)據(jù)連接
兩種模式:從服務器角度
主動(PORT style):服務器主動連接 命令(控制):客戶端:隨機port —> 服務器:21/tcp 數(shù)據(jù):客戶端:隨機port <—服務器:20/tcp
被動(PASV style):客戶端主動連接 命令(控制):客戶端:隨機port —> 服務器:21/tcp 數(shù)據(jù):客戶端:隨機port —> 服務器:隨機port /tcp
基于C/S結構有專門的客戶端和專門的服務端
雙通道協(xié)議:命令通道和數(shù)據(jù)通道(所謂雙通道就是FTP支持兩個端口)
命令通道:走TCP的21端口,用來傳輸指令的。
數(shù)據(jù)通道:用來傳輸數(shù)據(jù)的
命令通道永遠是客戶端主動向服務端發(fā)起請求:命令通道永遠走的是TCP/21端口
數(shù)據(jù)通道走的是兩個端口,通過工作模式來確定走的端口:
主動模式(post)為TCP的20端口。
被動模式走的是隨機端口,所謂主動和被動都是以服務器的角色來看。
主動模式(post):服務器端主動連接客戶端
被動模式(pasv):客戶端主動連接服務器端(會通過命令通道相互交換信息,客戶端就會知道服務端的隨機端口號)
范例:服務器被動模式數(shù)據(jù)端口 227 Entering Passive Mode (172,16,0,1,224,59) 服務器數(shù)據(jù)端口為:224*256+59
FTP雙通道工作原理解析
FTP是一種文件傳輸協(xié)議,它支持兩種模式,一種方式叫做Standard (也就是 Active,主動方式),一種是 Passive (也就是PASV,被動方式)。 Standard模式 (主動模式)FTP的客戶端發(fā)送 PORT 命令到FTP server。Passive模式(被動模式)FTP的客戶端發(fā)送 PASV命令到 FTP Server。
命令通道:
是客戶端主動向服務器端發(fā)起命令請求,同時服務器端開啟TCP/21端口號??蛻舳酥鲃影l(fā)起三次握手請求。
服務器由兩個端口發(fā)起鏈接。其中有一個叫命令通道的端口,有一個是實現(xiàn)數(shù)據(jù)通道的端口。命令通道是用來通過實現(xiàn)命令的執(zhí)行。數(shù)據(jù)端口是用來實現(xiàn)數(shù)據(jù)的傳輸,命令通道走的端口是固定的TCP/21端口。如果客戶端需要數(shù)據(jù)傳輸時,服務就會開啟數(shù)據(jù)通道端口。數(shù)據(jù)通道走的端口不是固定的,是根據(jù)工作模式來判斷開啟的端口。
數(shù)據(jù)通道:
下面介紹一個這數(shù)據(jù)通道的兩種方式的工作原理:
主動工作模式(post):服務器端主動連接客戶端
FTP 客戶端首先和FTP Server的TCP 21端口建立連接,通過這個通道發(fā)送命令,客戶端需要接收數(shù)據(jù)的時候在這個通道上發(fā)送PORT命令。 PORT命令包含了客戶端用什么端口接收數(shù)據(jù)。在傳送數(shù)據(jù)的時候,服務器端通過自己數(shù)據(jù)端口的TCP 20端口發(fā)送數(shù)據(jù)。 FTP server必須和客戶端建立一個新的連接用來傳送數(shù)據(jù)。
被動工作模式(pasv):客戶端主動連接服務器端(會通過命令通道相互交換信息,客戶端就會知道服務端的隨機端口號)
在建立控制通道的時候和Standard模式類似,當客戶端通過這個通道發(fā)送PASV 命令的時候,F(xiàn)TP server打開一個位于1024和5000之間的隨機端口并且通知客戶端在這個端口上傳送數(shù)據(jù)的請求,然后FTP server 將通過這個端口進行數(shù)據(jù)的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。
FTP服務狀態(tài)碼: 1XX:信息 125:數(shù)據(jù)連接打開 2XX:成功類狀態(tài) 200:命令OK 230:登錄成功 3XX:補充類 331:用戶名OK 4XX:客戶端錯誤 425:不能打開數(shù)據(jù)連接 5XX:服務器錯誤 530:不能登錄
用戶認證:
匿名用戶:ftp,anonymous,對應Linux用戶ftp 系統(tǒng)用戶:Linux用戶,用戶/etc/passwd,密碼/etc/shadow 虛擬用戶:特定服務的專用用戶,獨立的用戶/密碼文件。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業(yè)資訊頻道,感謝您對億速云的支持。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。