什么是ftp的主動模式和被動模式 ftp主動模式和被動模式的區別

什么是ftp的主動模式和被動模式 ftp主動模式和被動模式的區別

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:
【什么是ftp的主動模式和被動模式 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端口


相關經驗推薦