昨天對公司服務(wù)器的端口進(jìn)行了修改,把21端口改了,比如123端口,就這樣用123連接的時候,連接登陸成功,但打不開目錄,怎么搞的呢,到網(wǎng)上找了下文章,哈哈,終于解決了,連接成功,目錄文件盡在眼前!總結(jié)如下: 1、完成一個FTP的傳輸過程不僅僅只需要21一個端口,而是2個端口,21端口只是一個命令端口,其實(shí)另外還有一個數(shù)據(jù)端口,我想這就是有些朋友在內(nèi)網(wǎng)架設(shè)FTP并且在網(wǎng)關(guān)上做了21端口的映射之后外網(wǎng)還是不能訪問的原因吧,另外一個數(shù)據(jù)端口是多少呢?這又牽涉到另外一個問題。 2、FTP具有兩種模式,分別是port模式(也叫主動模式)和pasv模式(也叫被動模式),怎么來理解這兩種模式呢?我來打個比喻吧,在主動模式下:客戶端給服務(wù)器端的21端口發(fā)命令說,我要下載什么什么,并且還會說我已經(jīng)打開了自己的某個端口,你就從這里把東西給我吧,服務(wù)器知道后就會通過另外一個數(shù)據(jù)端口把東西傳給客戶端,這就是主動模式,可以理解為服務(wù)端主動給客戶端傳輸文件;在被動模式下:客戶端給服務(wù)器端的21端口發(fā)命令說,我要下載什么什么,服務(wù)器端知道后,就打開一個端口,然后告訴客戶端,我已經(jīng)打開了某某端口,你自己進(jìn)去拿吧,于是客戶端就從那個端口進(jìn)去拿文件了,這就是被動模式,可以理解為服務(wù)端被客戶端拿走了東西,哈哈,可以看懂吧。 在FTP的歷史中,本來只有主動模式的,但是為什么又出現(xiàn)了被動模式呢?這又牽涉到另外一個問題了,呵呵~ 3、在很久以前(我也不知道多久),地球上還沒有什么共享上網(wǎng)這種技術(shù),但是后來出現(xiàn)了,所以也就有了下面的問題,大家都知道,共享上網(wǎng)就是很多臺電腦共享一個公網(wǎng)IP去使用internet,再打個比喻吧,某個局域網(wǎng)共享210.33.25.1這個公網(wǎng)IP上網(wǎng),當(dāng)一個內(nèi)網(wǎng)用戶192.168.0.100去訪問外網(wǎng)的FTP服務(wù)器時,如果采用主動模式的話,192.168.0.1告訴了FTP服務(wù)器我需要某個文件和我打開了x端口之后,由于共享上網(wǎng)的原因,192.168.0.1在出網(wǎng)關(guān)的時候自己的IP地址已經(jīng)被翻譯成了210.33.25.1這個公網(wǎng)IP,所以服務(wù)器端收到的消息也就是210.33.25.1需要某個文件并打開了x端口,F(xiàn)TP服務(wù)器就會往210.33.25.1的x端口傳數(shù)據(jù),這樣當(dāng)然會連接不成功了,因?yàn)榇蜷_x端口的并不是210.33.25.1這個地址,在這種情況下被動模式就有用了,相信大家已經(jīng)能夠理解被動模式是怎么個連接法了吧。 好了,說了這么多,現(xiàn)在可以回到第一個問題了。 在主動模式中,F(xiàn)TP的兩個端口是相對固定的,如果命令端口是x的話,那數(shù)據(jù)端口就是x-1,也就是說默認(rèn)情況下,命令端口是21,數(shù)據(jù)端口就是20;你把命令端口改成了123,那么數(shù)據(jù)端口就是122。這樣使用防火墻就很方便了,只要開通這兩個端口就可以了,但是如果客戶端是共享上網(wǎng)的話那豈不是不能正常使用FTP了,這樣還是不行,一定需要被動模式。 在被動模式中就麻煩了些,默認(rèn)情況下命令端口是21,但是數(shù)據(jù)端口是隨機(jī)的,這個問題又讓我頭痛了一下,還好,我又找到了辦法,因?yàn)楸粍幽J街袛?shù)據(jù)端口的范圍是可以自定義的,在此我以Serv-U 6.1.0.5版為例,在/Local Server/Settings/Advanced/中。 |
|