FTP 協(xié)議在工作時(shí)開啟兩個(gè)端口,一個(gè)用與服務(wù)器與客戶機(jī) 之間傳輸控制命令(通常為 21) ,一個(gè)用來傳輸數(shù)據(jù)。并且根據(jù)實(shí)際情況的不同,有主動(dòng)被 動(dòng)模式之分(主動(dòng)被動(dòng)僅對服務(wù)器而言。 )
PORT(主動(dòng)模式)
默認(rèn) FTP 客戶端工作在主動(dòng)模式下,客戶端指定數(shù)據(jù)傳輸端口,服務(wù)器主動(dòng)去連接客戶端。
PASSIVE (被動(dòng)模式)
當(dāng) FTP 客戶端采用被動(dòng)模式連接時(shí), 服務(wù)器指定數(shù)據(jù)傳輸端口,服務(wù)器被動(dòng)等待客戶端連接。 通常默認(rèn)的 FTP 客戶端均采取主動(dòng)模式,即等待服務(wù)器主動(dòng)連接,同時(shí)也為了避免 NAT 代理服務(wù)器 防火墻等影響,有更改為被動(dòng)模式的選項(xiàng)。
下面的圖表會(huì)幫助管理員們記住每種 FTP 方式是怎樣工作的:
主動(dòng) FTP:
命令連接:客戶端 >1023端口 -> 服務(wù)器 21端口
數(shù)據(jù)連接:客戶端 >1023端口 <- 服務(wù)器 20端口
被動(dòng) FTP:
命令連接:客戶端 >1023端口 -> 服務(wù)器 21端口
數(shù)據(jù)連接:客戶端 >1023端口 -> 服務(wù)器 >1023端口
下面是FTP主動(dòng)模式與被動(dòng)模式優(yōu)缺點(diǎn)的簡要總結(jié):
主動(dòng) FTP 對 FTP 服務(wù)器的管理有利,但對客戶端的管理不利。因?yàn)?FTP 服務(wù)器企圖與客戶 端的高位隨機(jī)端口建立連接,而這個(gè)端口很有可能被客戶端的防火墻阻塞掉。被動(dòng) FTP 對 FTP 客戶端的管理有利, 但對服務(wù)器端的管理不利。 因?yàn)榭蛻舳艘c服務(wù)器端建立兩個(gè)連接 , 其中一個(gè)連到一個(gè)高位隨機(jī)端口,而這個(gè)端口很有可能被服務(wù)器端的防火墻阻塞掉。 幸運(yùn)的是,有折衷的辦法。既然 FTP 服務(wù)器的管理員需要他們的服務(wù)器有最多的客戶連接, 那么必須得支持被動(dòng) FTP。我們可以通過為 FTP 服務(wù)器指定一個(gè)有限的端口范圍來減小服 務(wù)器高位端口的暴露。這樣,不在這個(gè)范圍的任何端口會(huì)被服務(wù)器的防火墻阻塞。雖然這沒有消除所有針對服務(wù)器的危險(xiǎn),但它大大減少了危險(xiǎn)。