ftp被動模式高並發
『壹』 ftp主動傳輸模式與被動傳輸模式的主要區分是什麼 (簡述
主動模式是由客戶端指定埠,伺服器主動去連接,其對於伺服器的要求較高,若客戶端一方在防火牆後,從外向內的主動連接通常易被阻擋。如進行內外機器映射,則須同時映射控制埠和數據傳輸埠,但由於數據埠是由客戶端隨機指定的並不固定,這也加大建立連接的難度。
被動模式則一定程度上減輕了服務端的壓力,由伺服器指定埠,並等待客戶端發起連接。
『貳』 FTP主動模式和被動模式的區別
一、什麼是主動FTP
主動模式的FTP工作原理:客戶端從一個任意的非特權埠N連接到FTP伺服器的命令埠,也就是21埠。然後客戶端開始監聽埠N+1,並發送FTP命令「port
N+1」到FTP伺服器。接著伺服器會從它自己的數據埠(20)連接到客戶端指定的數據埠(N+1)。
針對FTP伺服器前面的防火牆來說,必須允許以下通訊才能支持主動方式FTP:
1、
任何大於1024的埠到FTP伺服器的21埠。(客戶端初始化的連接)
2、
FTP伺服器的21埠到大於1024的埠。
(伺服器響應客戶端的控制埠)
3、
FTP伺服器的20埠到大於1024的埠。(伺服器端初始化數據連接到客戶端的數據埠)
4、
大於1024埠到FTP伺服器的20埠(客戶端發送ACK響應到伺服器的數據埠)
二、什麼是被動FTP
為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。
在被動方式FTP中,命令連接和數據連接都由客戶端發起,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。
當開啟一個
FTP連接時,客戶端打開兩個任意的非特權本地埠(N
>
1024和N+1)。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交
PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權埠(P
>
1024),並發送PORT
P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。
對於伺服器端的防火牆來說,必須允許下面的通訊才能支持被動方式的FTP:
1、
從任何大於1024的埠到伺服器的21埠(客戶端初始化的連接)
2、
伺服器的21埠到任何大於1024的埠(伺服器響應到客戶端的控制埠的連接)
3、
從任何大於1024埠到伺服器的大於1024埠(客戶端初始化數據連接到伺服器指定的任意埠)
4、
伺服器的大於1024埠到遠程的大於1024的埠(伺服器發送ACK響應和數據到客戶端的數據埠)
以上關於主動和被動FTP的解釋,可以簡單概括為以下兩點:
1、主動FTP:
命令連接:客戶端
>1024埠
->
伺服器
21埠
數據連接:客戶端
>1024埠
<-
伺服器
20埠
2、被動FTP:
命令連接:客戶端
>1024埠
->
伺服器
21埠
數據連接:客戶端
>1024埠
->
伺服器
>1024埠
三、主動模式ftp與被動模式FTP優點和缺點:
主動FTP對FTP伺服器的管理和安全很有利,但對客戶端的管理不利。因為FTP伺服器企圖與客戶端的高位隨機埠建立連接,而這個埠很有可能被客戶端的防火牆阻塞掉。被動FTP對FTP客戶端的管理有利,但對伺服器端的管理不利。因為客戶端要與伺服器端建立兩個連接,其中一個連到一個高位隨機埠,而這個埠很有可能被伺服器端的防火牆阻塞掉。
『叄』 ftp被動模式和主動模式哪個好
看你的需求了
(一)主動FTP
主動方式的FTP是這樣的:客戶端從一個任意的非特權埠N(N>1024)連接到FTP伺服器的命令埠,也就是21埠。然後客戶端開始監聽埠N+1,並發送FTP命令「port N+1」到FTP伺服器。接著伺服器會從它自己的數據埠(20)連接到客戶端指定的數據埠(N+1)。
(二)被動FTP
為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。
在被動方式FTP中,命令連接和數據連接都由客戶端發起,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。
當開啟一個 FTP連接時,客戶端打開兩個任意的非特權本地埠(N > 1024和N+1)。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交 PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權埠(P > 1024),並發送PORT P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。
(三)主動與被動FTP優缺點:
主動FTP對FTP伺服器的管理有利,但對客戶端的管理不利。因為FTP伺服器企圖與客戶端的高位隨機埠建立連接,而這個埠很有可能被客戶端的防火牆阻塞掉。被動FTP對FTP客戶端的管理有利,但對伺服器端的管理不利。因為客戶端要與伺服器端建立兩個連接,其中一個連到一個高位隨機埠,而這個埠很有可能被伺服器端的防火牆阻塞掉。
『肆』 大白話解釋一下「被動FTP模式」是什麼意思
FTP中的兩種工作方式--Standard(PORT)和Passive
FTP是一種文件傳輸協議,它支持兩種模式,一種方式叫做Standard
(也就是
Active,主動方式),一種是
Passive
(也就是PASV,被動方式)。
Standard模式
FTP的客戶端發送
PORT
命令到FTP
server。Passive模式FTP的客戶端發送
PASV命令到
FTP
Server。
下面介紹一個這兩種方式的工作原理:
Standard模式FTP:客戶端首先和FTP
Server的TCP
21埠建立連接,通過這個通道發送命令,客戶端需要接收數據的時候在這個通道上發送PORT命令。
PORT命令包含了客戶端用什麼埠接收數據。在傳送數據的時候,伺服器端通過自己的TCP
20埠發送數據。
FTP
server必須和客戶端建立一個新的連接用來傳送數據。
Passive模式:在建立控制通道的時候和Standard模式類似,當客戶端通過這個通道發送PASV
命令的時候,FTP
server打開一個位於1024和5000之間的隨機埠並且通知客戶端在這個埠上傳送數據的請求,然後FTP
server
將通過這個埠進行數據的傳送,這個時候FTP
server不再需要建立一個新的和客戶端之間的連接。
『伍』 ftp的兩種模式
一種是模式是一種主動連接,被動則相反.
『陸』 如何設置windows自帶的ftp使用被動模式上傳數據
被動模式:
1、客戶端打開命令埠X(X>1024)到伺服器21埠。
2、客戶端在該命令通道中,發送「PASV」命令給伺服器。
3、伺服器在監聽該埠後,將會開啟一個任意的非特權埠Z(Z>1024),返回並發送給客戶端。
4、客戶端建立數據通道,並從本地埠X+1發送到伺服器Z埠。
5、伺服器接受該數據通道。
『柒』 FTP主動模式和被動模式的區別
(一)主動FTP
主動方式的FTP是這樣的:客戶端從一個任意的非特權埠N(N>1024)連接到FTP伺服器的命令埠,也就是21埠。然後客戶端開始監聽埠N+1,並發送FTP命令「port
N+1」到FTP伺服器。接著伺服器會從它自己的數據埠(20)連接到客戶端指定的數據埠(N+1)。
針FTP伺服器前面的防火牆來說,必須允許以下通訊才能支持主動方式FTP:
1. 任何大於1024的埠到FTP伺服器的21埠。(客戶端初始化的連接)
2. FTP伺服器的21埠到大於1024的埠。 (伺服器響應客戶端的控制埠)
3. FTP伺服器的20埠到大於1024的埠。(伺服器端初始化數據連接到客戶端的數據埠)
4. 大於1024埠到FTP伺服器的20埠(客戶端發送ACK響應到伺服器的數據埠)
(二)被動FTP
1、為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的FTP連接方式。這就是所謂的被動方式,或者叫做PASV,當客戶端通知伺服器它處於被動模式時才啟用。
2、在被動方式FTP中,命令連接和數據連接都由客戶端發起,這樣就可以解決從伺服器到客戶端的數據埠的入方向連接被防火牆過濾掉的問題。
3、當開啟一個 FTP連接時,客戶端打開兩個任意的非特權本地埠(N >
1024和N+1)。第一個埠連接伺服器的21埠,但與主動方式的FTP不同,客戶端不會提交PORT命令並允許伺服器來回連它的數據埠,而是提交
PASV命令。這樣做的結果是伺服器會開啟一個任意的非特權埠(P > 1024),並發送PORT
P命令給客戶端。然後客戶端發起從本地埠N+1到伺服器的埠P的連接用來傳送數據。
『捌』 什麼是ftp的主動模式,被動模式,如何設
在使用ftp的時侯,經常遇到ftp鏈接後出現文件列表錯誤的情況,只是因為ftp的模式不正確,如何設置ftp的工作模式,什麼是主動模式,什麼又是被動模式,主動模式和被動模式有什麼區別,今天搜集了相關資料和常用ftp軟體工作模式的設置的方法:
一、什麼是PASV和PORT方式
(1)PORT其實是Standard模式的另一個名字,又稱為Active模式。中文意思是「主動模式。
(2)PASV也就是Passive的簡寫。中文就是「被動模式。
二、兩者不同
不同之處是由於PORT(主動)這個方式需要在接上TCP
21埠後,伺服器通過自己的TCP
20來發出數據。並且需要建立一個新的連接來傳送檔案。而PORT的命令包含一些客戶端沒用的資料,所以有了PASv的出現。而PASV模式擁有PORT模式的優點,並去掉一些PORT的缺點。PASV運行方式就是當伺服器接收到客戶端連接請求時,就會自動從埠1024到5000中隨機選擇一個和客戶端建立連接傳遞數據。由於被動且自動建立連接,容易受到攻擊,所以安全性差。
三、常見的FTP客戶端軟體PORT方式與PASV方式的切換方法
大部分FTP客戶端默認使用PASV方式。IE默認使用PORT方式。
在大部分FTP客戶端的設置里,常見到的字眼都是「PASV」或「被動模式」,極少見到「PORT」或「主動模式」等字眼。因為FTP的登錄方式只有兩種:PORT和PASV,取消PASV方式,就意味著使用PORT方式。
(1)IE:工具
->
Internet選項
->
高級
->
「使用被動FTP」(需要IE6.0以上才支持)。
(2)CuteFTP:Edit
->
Setting
->
Connection
->
Firewall
->
「PASV
Mode」
或File
->
Site
Manager,在左邊選中站點
->
Edit
->
「Use
PASV
mode」
。
(3)FlashGet:工具
->
選項
->
代理伺服器
->
直接連接
->
編輯
->
「PASV模式」。
(4)FlashFXP:選項
->
參數選擇
->
代理/防火牆/標識
->
「使用被動模式」
或
站點管理
->
對應站點
->
選項
->
「使用被動模式」或快速連接
->
切換
->
「使用被動模式」。
『玖』 為什麼ftp協議要採用主動和被動兩種模式,有什麼好處
FTP是一種文件傳輸協議,它支持兩種模式, 一種方式叫做Standard(也就是Active, 主動方式),一種是Passive(也就是PASV, 被動方式)。Standard模式FTP的客戶端發送 PORT命令到FTPserver。 Passive模式FTP的客戶端發送PASV命令到 FTPServer。 下面介紹一個這兩種方式的工作原理: Standard模式FTP客戶端首先和FTP Server的TCP21埠建立連接, 通過這個通道發送命令, 客戶端需要接收數據的時候在這個通道上發送PORT命令。 PORT命令包含了客戶端用什麼埠接收數據。 在傳送數據的時候,伺服器端通過自己的TCP 20埠發送數據。FTP server必須和客戶端建立一個新的連接用來傳送數據。 Passive模式在建立控制通道的時候和Standard模式 類似,當客戶端通過這個通道發送PASV命令的時候,FTP server打開一個位於1024和5000之間的隨機埠並且 通知客戶端在這個埠上傳送數據的請求,然後FTP server將通過這個埠進行數據的傳送,這個時候FTP server不再需要建立一個新的和客戶端之間的連接。 現在的FTP軟體裡麵包括在IE5以上的版本裡面也已經支持這兩 種模式了。一般一些FTP客戶端的軟體就比較好設置了, 一般都有一個PASV的選項,比如CuteFTP, 傳輸的方式都有Standard和PASV的選項, 可以自己進行選擇; 另外在IE裡面如果要設置成PASV模式的話可以選中工具- Internet選項-高級-為FTP站點啟用文件夾視圖, 否則就採用Standard模式。 很多防火牆在設置的時候都是不允許接受外部發起的連接的, 所以FTP的Standard模式在許多時候在內部網路的機器通 過防火牆出去的時候受到了限制,因為從伺服器的TCP 20無法和內部網路的客戶端建立一個新的連接,造成無法工作。 當然也可以設置成功, 首先要創建一條規則就是允許內部的IP連接外部的IP的21埠 ;第二條就是禁止外部IP的TCP20埠連接內部IP的< 1024的埠,這條是為了防止外部連接內部的常規埠; 第三條驗證ACK是否等於1, 這個的原理就參見TCP建立連接的三次握手吧。 所以如果安全的配置的話非常困難, 這個時候就想起來了PASV模式,因為不用建立新的連接, 所以也就不會涉及到後面的問題了。 但是管理員可能不想使用PASV模式,因為這個時候FTP Server會開放一個隨機的高埠, 盡管在IIS4和IIS5裡面埠的范圍是1024-5000, 但是許多FTPServer的埠范圍達到了1024- 65535, 這個時候在這個主動開放的隨機埠上是有完全的訪問許可權的, 如果IIS也要設置成開放的埠為1024-65535, 具體方法如下: 1.regedt32 2.找到HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters 3.編輯-添加-數值 ValueName:MaxUserPortData Type:REG_DWORDValue:65534< forexample> 所以如果遇到了有防火牆的話或者怕配置麻煩的話還是採用PASV 模式比較好些, 但是如果真的對安全的需求很高的話建議採用Standard模式 。
『拾』 FTP主動模式和被動模式!
FTP(File Transfer Protocol,文件傳輸協議) 是 TCP/IP 協議組中的協議之一。FTP協議包括兩個組成部分,其一為FTP伺服器,其二為FTP客戶端。其中FTP伺服器用來存儲文件,用戶可以使用FTP客戶端通過FTP協議訪問位於FTP伺服器上的資源。在開發網站的時候,通常利用FTP協議把網頁或程序傳到Web伺服器上。此外,由於FTP傳輸效率非常高,在網路上傳輸大的文件時,一般也採用該協議。
默認情況下FTP協議使用TCP埠中的 20 和 21 這兩個埠,其中20用於傳輸數據,21用於傳輸控制信息。但是,是否使用20作為傳輸數據的埠與FTP使用的傳輸模式有關,如果採用主動模式,那麼數據傳輸埠就是20;如果採用被動模式,則具體最終使用哪個埠要伺服器端和客戶端協商決定。
FTP支持兩種模式,它在工作運行時也主要是這兩種模式,一種模式叫作Standard也被稱為PORT方式和 主動方式 ,另一種模式叫作Passive也叫作PASV, 被動方式 。Standard模式FTP的客戶端發出PORT命令到伺服器,Passive模式FTP的客戶端發送PASV命令到FTP Server中,從而保證文件相互傳輸正常。
我們使用華為的模擬器Ensp來做一個小實驗。
FTP三次握手有兩次,第一次的TCP三次握手是控制層的握手,第二次是數據層的TCP三次握手
(1)伺服器打開埠 21,等待連接;
(2)客戶端(100.1.12.1)發起控制連接的建立請求,伺服器響應連接,控制連接建立,使用TCP 三次握手(第一次TCP三次握手);
隨機埠的計算
可以看到PORT為 10,0,0,2,8,6
隨機埠計算為: 8*256+6=2054
(3)客戶端通過控制連接發送 PORT 命令(在應用層數據中帶有自己的 ip 地址和臨時埠),將客戶端數據連接的臨時埠號告訴伺服器
(4)伺服器的 20 號埠與客戶端建立起數據連接,使用TCP 三次握手(第二次TCP三次握手);
點擊登出後控制埠斷開連接
FTP三次握手有兩次,第一次的TCP三次握手是控制層的握手,第二次是數據層的TCP三次握手
(1)伺服器打開埠 21,等待連接
(2)客戶端發起控制連接的建立請求,伺服器響應連接,控制連接建立,使用TCP 三次握手(第一次TCP三次握手);
(3)客戶端通過控制連接發送命令字 PASV,告知伺服器處於被動模式;
(4)伺服器回應,將伺服器數據連接的臨時埠號(2060)告訴客戶端;
(5)客戶端與伺服器的臨時埠建立起數據連接,使用TCP 三次握手(第二次TCP三次握手);