❶ 什麼是ftp主動模式和被動模式
FTP是文件傳輸協議的簡稱,ftp傳輸協議有著眾多的優點所以傳輸文件時使用ftp協議的軟體很多,ftp協議使用的埠是21(也稱為控制埠),其實還有一個數據埠20,根據FTP工作方式的不同,數據埠也不都是20,主動模式的被動模式使用的數據埠是不一樣的,下面我就一步一步介紹主動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伺服器配置Windows防火牆 詳細�0�3
通過打開到 TCP 埠號 21 的「命令通道」連接,標准模式 FTP 客戶端會啟動到伺服器的會話。客戶端通過將 PORT 命令發送到伺服器請求文件傳輸。然後,伺服器會嘗試啟動返回到 TCP 埠號 20 上客戶端的「數據通道」連接。客戶端上運行的典型防火牆將來自伺服器的此數據通道連接請求視為未經請求,並會丟棄數據包,從而導致文件傳輸失敗。 Windows Vista 和 Windows Server 2008 中的 高級安全 Windows 防火牆 支持有狀態 FTP ,該 FTP 允許將埠 20 上的入站連接請求與來自客戶端的先前出站 PORT 命令相匹配。但是,如果您通過 SSL 使用 FTP 來加密和保護 FTP 通信,則防火牆不再能夠檢查來自伺服器的入站連接請求,並且這些請求會被阻止。 為了避免此問題, FTP 還支持「被動」操作模式,客戶端在該模式下啟動數據通道連接。客戶端未使用 PORT 命令,而是在命令通道上發送 PASV 命令。伺服器使用 TCP 埠號進行響應,客戶端應連接到該埠號來建立數據通道。默認情況下,伺服器使用極短范圍( 1025 到 5000 )內的可用埠。為了更好保護伺服器的安全,您可以限制 FTP 服務使用的埠范圍,然後創建一個防火牆規則:僅在那些允許的埠號上進行 FTP 通信。 本主題將討論執行以下操作的方法: 1. 配置 FTP 服務以便僅將有限數量的埠用於被動模式 FTP 2. 配置入站防火牆規則以便僅在允許的埠上進行入站 FTP 連接 以下過程顯示在 Internet 信息服務 (IIS) 7.0 版上配置 FTP 服務的步驟。如果您使用其他 FTP 服務,請查閱產品文檔以找到相應的步驟。配置對 SSL 的支持不在本主題的討論范圍之內。有關詳細信息,請參閱 IIS 文檔。 配置 FTP 服務以便僅將有限數量的埠用於被動模式 FTP 1. 在 IIS 7.0 管理器中的「連接」窗格中,單擊伺服器的頂部節點。 2. 在細節窗格中,雙擊「FTP 防火牆支持」。 3. 輸入您希望 FTP 服務使用的埠號的范圍。例如,41000-41099 允許伺服器同時支持 100 個被動模式數據連接。 4. 輸入防火牆的外部 IPv4 地址,數據連接通過該地址到達。 5. 在「操作」窗格中,單擊「應用」保存您的設置。 還必須在 FTP 伺服器上創建防火牆規則,以在前一過程中配置的埠上允許入站連接。盡管您可以創建按編號指定埠的規則,但是,創建打開 FTP 服務所偵聽的任何埠的規則更為容易。通過按前一過程中的步驟操作,您可限制 FTP 偵聽的埠。 配置入站防火牆規則以便僅允許到 FTP 所偵聽埠的入站 FTP 連接 1. 打開管理員命令提示符。依次單擊「開始」、「所有程序」和「附件」,右鍵單擊「命令提示符」,然後單擊「以管理員身份運行」。 2. 運行下列命令: 復制代碼 netsh advfirewall firewall add rule name=」FTP Service」 action=allow service=ftpsvc protocol=TCP dir=in 3. 最後,禁用有狀態 FTP 篩選,以使防火牆不會阻止任何 FTP 通信。 復制代碼 netsh advfirewall set global StatefulFTP disable Windows Firewall and non-secure FTP traffic Windows firewall can be configured from command line using netsh command. 2 simple steps are required to setup Windows Firewall to allow non-secure FTP traffic 1) Open port 21 on the firewall netsh advfirewall firewall add rule name="FTP (no SSL)" action=allow protocol=TCP dir=in localport=21 2) Activate firewall application filter for FTP (aka Stateful FTP) that will dynamically open ports for data connections netsh advfirewall set global StatefulFtp enable
❸ FTP的被動模式是如何實現的,和標準的FTP有什麼差別
總的來說,主動模式的FTP是指伺服器主動連接客戶端的數據埠,被動模式的FTP是指伺服器被動地等待客戶端連接自己的數據埠。
被動模式的FTP通常用在處於防火牆之後的FTP客戶訪問外界FTp伺服器的情況,因為在這種情況下,防火牆通常配置為不允許外界訪問防火牆之後主機,而只允許由防火牆之後的主機發起的連接請求通過。因此,在這種情況下不能使用主動模式的FTP傳輸,而被動模式的FTP卻可以良好的工作。
詳細見我空間的帖子
http://hi..com/idownload/blog/item/124505241a94aa30c9955948.html
❹ FTP主動與被動模式
FTP是僅基於TCP的服務,不支持UDP。與眾不同的是FTP使用2個埠,一個數據埠和一個命令埠(也可叫做控制埠)。通常來說這兩個埠是21(命令埠)和20(數據埠)。但FTP工作方式的不同,數據埠並不總是20。這就是主動與被動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
為了解決伺服器發起到客戶的連接的問題,人們開發了一種不同的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數據傳輸模式中的主動模式與被動模式在實際中的是怎麼應用的
你為什麼對這個問題感興趣?
簡單介紹一下:
Standard,也就是Active,主動方式,客戶端發送PORT命令到伺服器。
Passive,也就是PASV,被動方式,客戶端發送PASV命令到伺服器。
兩者不同(有點枯燥,簡單看看就行)
不同之處是由於PORT(主動)這個方式需要在接上TCP 21埠後,伺服器通過自己的TCP 20來發出數據。並且需要建立一個新的連接來傳送檔案。而PORT的命令包含一些客戶端沒用的資料,所以有了PASv的出現。而PASV模式擁有PORT 模式的優點,並去掉一些PORT的缺點。PASV運行方式就是當伺服器接收到客戶端連接請求時,就會自動從埠1024到5000中隨機選擇一個和客戶端 建立連接傳遞數據。由於被動且自動建立連接,容易受到攻擊,所以安全性差。
簡單點:
很多防火牆在設置的時候都是不允許接受外部發起的連接的,所以FTP的Standard主動模式在內部網路的機器通過防火牆出去的時候受到了限制。因此常用的是被動模式,這樣更為安全,對於網路管理員來說也易於操作。
如果你知道防火牆的原理和網路結構,那麼主動和被動模式就比較好理解了。
❻ 如何設置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主動模式就是FTP會用自己的20埠去主動得跟客戶端建立連接,當客戶端網路做NAT的時候會發生錯誤。把NAT的埠認為是客戶端與FTP 20埠建立連接的
被動模式就是當建立ftp連接後,客戶端發送一個被動模式請求給伺服器,伺服器選擇一個數據埠監聽,並把埠告訴客戶端,客戶端直接向數據埠發起連接,這樣,即使中間有做NAT也不影響FTP數據傳輸通道建立