首页
/
每日頭條
/
職場
/
ftp的基本工作原理
ftp的基本工作原理
更新时间:2025-02-20 19:28:23
FTP概述

FTP(File Transfer Protocol)文件傳輸協議,在TCP/IP協議族中屬于應用層協議運行于TCP協議之上是一種可靠的傳輸協議,主要功能用于實現用戶間文件分發共享,以及網絡管理者在進行設備版本升級、日志下載和配置保存等業務操作時,均會使用到FTP功能。

搭建FTP站點

FTP協議采用C/S結構,通常我們在實現FTP功能時需要在服務器上配置IIS來實現FTP-Server端的配置,這種配置方式适合于比較了解操作系統的用戶去操作;對于大部分非專業用戶來說推薦使用相應的FTP軟件來實現FTP-Server端的搭建。

常見的FTP-Server軟件有Serv-U、FileZilla 、VsFTP 等。FTP-Server搭建完成之後,Client訪問時可以通過FTP://x.x.x.x方式訪問,也可以通過第三方軟件訪問。如:SmartFTP、FireFTP、8UFTP。

關于具體的FTP-Server搭建操作步驟不再詳細贅述。

FTP的兩個TCP連接:

控制連接(TCP 21端口)主要用于實現FTP協議控制信令傳送,服務器端打開TCP 21端口被動等待客戶端發起連接命令;客戶端則以主動方式打開随機端口,發起連接的建立請求。

數據連接(TCP 20端口)主要用于實現應用數據傳送,服務器的數據連接端使用端口20。服務器執行主動打開數據連接,通常也執行主動關閉數據連接 。

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)1

FTP連接建立方式

一、主動方式

主動方式也稱為PORT方式,是FTP協議最初定義的數據傳輸連接方式,主要特點是:

FTP客戶端通過向FTP服務器發送PORT命令,告訴服務器該客戶端用于傳輸數據的臨時端口号當需要傳送數據時,服務器通過TCP端口号20與客戶端的臨時端口建立數據傳輸通道,完成數據傳輸。在建立數據連接的過程中,由服務器主動發起連接,因此被稱為主動方式。

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)2

主動方式FTP建立交互過程

二、被動方式

被動方式也稱為PASV方式,被動方式的主要特點是:

FTP客戶端通過向FTP服務器發送PASV命令,告訴服務器進入被動方式。服務器選擇臨時端口号并告知客戶端當需要傳送數據時,客戶端主動與服務器的臨時端口号建立數據傳輸通道,完成數據傳輸。在整個過程中,由于服務器總是被動接收客戶端的數據連接,因此被稱為被動方式。

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)3

被動方式FTP建立交互過程

FTP主動、被動方式的選擇

當FTP服務器與FTP客戶端均處于同一局域網内,即兩者之間互訪不存在防火牆或其他安全設備時,主動方式、被動方式均可實現FTP文件分發共享。

如果FTP服務器處于路由器,防火牆或其他NAT設備之後,建議使用被動模式(passive mode)。因為在主動模式下傳輸數據時,由FTP發起的數據傳輸一般會被客戶端網關的防火牆阻斷。

關于主動與被動FTP優缺點的簡要總結:

主動FTP對FTP服務器的管理有利,但對客戶端的管理不利。因為FTP服務器企圖與客戶端的高位随機端口建立連接,而這個端口很有可能被客戶端的防火牆阻塞掉。

被動FTP對FTP客戶端的管理有利,但對服務器端的管理不利。因為客戶端要與服務器端建立兩個連接,其中一個連到一個高位随機端口,而這個端口很有可能被服務器端的防火牆阻塞掉。

針對上述防火牆帶來的問題,有折衷的辦法。既然FTP服務器的管理員需要他們的服務器有最多的客戶連接,那麼必須得支持被動FTP。我們可以通過為FTP服務器指定一個有限的端口範圍來減小服務器高位端口的暴露。這樣,不在這個範圍的任何端口會被服務器的防火牆阻塞。雖然這沒有消除所有針對服務器的危險,但它大大減少了危險。

下述内容通過實驗詳細介紹了兩種方式的建立過程:

FTP被動模式

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)4

如圖示192.168.1.1為FTP-Server,192.168.1.2為FTP-Client,使用被動方式建立過程如下:

首先FTP在進行控制連發起前,需要先進行基本用戶登錄認證以及文件列表獲取等操作;

1.由客戶端發起FTP連接請求,FTP協議基于TCP,于是先進行TCP三次握手連接,連接服務器21端口;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)5

2.TCP三次握手建立成功後,服務器也知道了客戶端需要請求FTP服務,于是要求客戶端提供相應的用戶名(客戶端在進行FTP連接時需要發送用戶名和密碼信息);

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)6

3.客戶端收到服務器的驗證需求後,立即發送用戶名 user = 1;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)7

4.服務器收到後,确認用戶名OK,此時需要客戶端提供password;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)8

5.客戶端發送password=1;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)9

6.服務器端用戶名密碼驗證成功允許用戶登錄;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)10

7. 客戶端登錄到服務器之後開始發送查詢命令 “PWD”查詢FTP文件路徑;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)11

8.服務器回複客戶端“PWD”查詢,反饋文件路徑信息;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)12

9.客戶端開始請求查詢服務器發送文件的方式 ASCII/二進制;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)13

10.服務器對客戶端發送的文件類型查詢進行響應,回複文件傳輸方式為ASCII;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)14

上述1-10步完成了FTP在進行控制連接操作前,基本用戶登錄認證以及文件列表獲取等内容;

11. FTP被動方式,由客戶端發送“PASV”命令;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)15

12.服務器收到PASV命令後,知道自己此時為被動方式,則開始生成随機的數據端口,以提供給客戶端進行數據連接的時候使用;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)16

13.客戶端開始發送LIST命令查詢文件列表信息;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)17

14.在文件數據傳輸之前,先建立數據傳輸時的TCP三次握手;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)18

15.數據傳輸的三次握手成功後,服務器開始向客戶端通知自己已經準備就緒,馬上開始文件傳輸;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)19

16.文件開始傳輸,在傳輸過程中有TCP對文件傳輸進行确認;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)20

17.客戶端文件接收完畢 通過控制鍊路告知服務器;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)21

18.服務器收到之後認為文件傳輸完成,此時關閉數據連接并告知客戶端;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)22

19.客戶端收到服務器發送來的關閉數據連接信息後,則向服務器在進行确認FTP控制連接斷開過程;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)23

20.由客戶端發起端開請求命令 QUIT;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)24

21.服務器收到請求後同意斷開 向客戶端發送goodbye;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)25

22.TCP會話也斷開;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)26

FTP 主動模式

連接建立發起前,基本用戶登錄認證以及文件列表獲取等内容與被動方式相同參考上述1-10步驟。

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)27

1.由客戶端發送PORT命令,同時自己随機生成一個數據端口,并将該端口信息通過控制鍊路發送給服務器;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)28

2.服務器收到PORT命令之後,此時就知道自己是處于主動模式,并開始與客戶端進行TCP連接;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)29

3.TCP連接成功後,服務器主動通過控制鍊路告訴客戶端自己已經準備就緒,可以發起數據連接;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)30

4.客戶端開始發送LIST命令查詢文件列表信息;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)31

5.服務器回複了相應文件信息,并開始準備從數據連接發送文件;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)32

6.服務器開始發送文件過程,發送過程中均有TCP的确認産生;

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)33

7.文件發送完成終止數據連接過程(詳細參考被動連接17-19部分);

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)34

8 .終止FTP回話與被動終止方式相同(詳細參考被動連接20-22部分)。

ftp的基本工作原理(泰漲知識淺談FTP協議的工作方式)35

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
我們應該如何應對職業倦怠(我的工作究竟有什麼意義)
我們應該如何應對職業倦怠(我的工作究竟有什麼意義)
  本文字數 2500/ 閱讀需要 7 min   文 | 梁娟(簡單心理認證·新手咨詢師)   “大半的人在二十歲或三十歲上就死了。一過這個年齡,他們隻變了自己的影子。以後的生命不過是用來模仿自己,把以前真正有人味兒的時代所說的,所做的,所想的,所喜歡的,一天天的重複,而且重複的方式越來越機械,越來越脫腔走闆。”   ——《約翰·克裡斯多夫》羅曼·羅蘭  ...
2025-02-20
職場感悟簡短語句(三分鐘職場感悟分享)
職場感悟簡短語句(三分鐘職場感悟分享)
     一個人進入職場的時候,領導或者家人往往會告訴我們“少說話,多做事”,目的是讓我們不做誇誇其談、眼高手低的人。   “少說話,多做事”是職場生存的第一法則。   職場是一個靠實力吃飯、憑實績說話的地方。領導和同事對一個人的評價,不是光看他說得怎麼樣,更多的是看他做得怎麼樣。   在職場上,沒有誰會喜歡說得多、做得少或者隻說不做的人,而那些擁有實力、少...
2025-02-20
韓服男法師新職業二覺(韓服90級開放男法新轉職二覺及最新職業平衡)
韓服男法師新職業二覺(韓服90級開放男法新轉職二覺及最新職業平衡)
  摘要:16.08.16韓體驗服更新90級版本,此篇為版本細節講解,男法新轉職二覺及最新職業平衡   一.90級版本更新細節   [等級擴張]   * 等級上限擴張至90級。   [新增地區]   * 新增"metro中心"地區。   * 新增"魔界駐地, 中央公園" 城鎮。   - 可以進入至"魔界駐地" 城鎮地帶。   - 通過冒險家公會的城鎮移動,可...
2025-02-20
發動機用不用補充機油(發動機不可缺少機油)
發動機用不用補充機油(發動機不可缺少機油)
  機油對于發動機來說就像血液一樣,非常重要!機油不僅僅是潤滑的功能,還有防腐防鏽,冷卻,密封,降低噪音,充當液壓油的功能!  首先機油是從加油口加入的,加油口在上端,機油一般都在下部油底殼内!氣缸蓋内部是有油道的,通過回油的油道流回油底殼,油底殼下面會有一個叫做機油泵的部件,這個部件一般是曲軸驅動,當發動機旋轉的時候驅動機油泵,開始泵油!  機油泵一般會有...
2025-02-20
容祖兒绯聞有哪些(容祖兒戀情撲朔迷離)
容祖兒绯聞有哪些(容祖兒戀情撲朔迷離)
  【作者:小娛兒】   期待您的關注、轉發和點贊,麼麼哒      2007年我特喜歡陳冠希,喜歡他壞壞的笑,喜歡他的歌《故意》:“我愛你卻故意,故意說不愛你”。   可到了2008年初,才發現他确實是壞,他簡直壞透了!   某某門事件08年爆發,至今過去已經12年了,導演陳冠希已經結婚生子,變成“女兒奴”,在美國混得風生水起。      可女主角阿嬌嫁得...
2025-02-20
Copyright 2023-2025 - www.tftnews.com All Rights Reserved