對服務器的ftp端口進行修改


  對服務器的ftp端口進行了修改,把21端口改了,比如221端口,就這樣用221連接的時候,連接登錄成功,但打不開目錄,為何,總結如下:

  1、完成一個FTP的傳輸過程不僅僅只需要21一個端口,而是2個端口,21端口只是一個命令端口,其實另外還有一個數據端口,我想這就是有些 朋友在內網架設FTP並且在網關上做了21端口的映射之后外網還是不能訪問的原因吧,另外一個數據端口是多少呢?這又牽涉到另外一個問題。

  2、FTP具有兩種模式,分別是port模式(也叫主動模式)和pasv模式(也叫被動模式),怎么來理解這兩種模式呢?我來打個比喻吧,在主 動模式下:客戶端給服務器端的21端口發命令說,我要下載什么什么,並且還會說我已經打開了自己的某個端口,你就從這里把東西給我吧,服務器知道后就會通 過另外一個數據端口把東西傳給客戶端,這就是主動模式,可以理解為服務端主動給客戶端傳輸文件;在被動模式下:客戶端給服務器端的21端口發命令說,我要 下載什么什么,服務器端知道后,就打開一個端口,然后告訴客戶端,我已經打開了某某端口,你自己進去拿吧,於是客戶端就從那個端口進去拿文件了,這就是被 動模式,可以理解為服務端被客戶端拿走了東西,哈哈,可以看懂吧。

  在FTP的歷史中,本來只有主動模式的,但是為什么又出現了被動模式呢?這又牽涉到另外一個問題了,呵呵~

  3、在很久以前(我也不知道多久),地球上還沒有什么共享上網這種技術,但是后來出現了,所以也就有了下面的問題,大家都知道,共享上網就是很 多台電腦共享一個公網IP去使用internet,再打個比喻吧,某個局域網共享210.33.25.1這個公網IP上網,當一個內網用戶 192.168.0.100去訪問外網的FTP服務器時,如果采用主動模式的話,192.168.0.1告訴了FTP服務器我需要某個文件和我打開了x端 口之后,由於共享上網的原因,192.168.0.1在出網關的時候自己的IP地址已經被翻譯成了210.33.25.1這個公網IP,所以服務器端收到 的消息也就是210.33.25.1需要某個文件並打開了x端口,FTP服務器就會往210.33.25.1的x端口傳數據,這樣當然會連接不成功了,因 為打開x端口的並不是210.33.25.1這個地址,在這種情況下被動模式就有用了,相信大家已經能夠理解被動模式是怎么個連接法了吧。

  好了,說了這么多,現在可以回到第一個問題了。

  在主動模式中,FTP的兩個端口是相對固定的,如果命令端口是x的話,那數據端口就是x-1,也就是說默認情況下,命令端口是21,數據端口就 是20;你把命令端口改成了123,那么數據端口就是122。這樣使用防火牆就很方便了,只要開通這兩個端口就可以了,但是如果客戶端是共享上網的話那豈 不是不能正常使用FTP了,這樣還是不行,一定需要被動模式。

  在被動模式中就麻煩了些,默認情況下命令端口是21,但是數據端口是隨機的,不過被動模式中數據端口的范圍是可以自定義的,IIS中修改ftp端口步驟如下:

1,打開IIS,修改FTP端口為221;

2,運行cmd后輸入如下命令:C:/Inetpub/AdminScripts>cscript adsutil.vbs set /MSFTPSVC/PassivePortRange "5001-5001"(這個端口必須在5001到65535之間)

3,重新啟動FTP服務。

4,打開防火牆,添加221和5001端口。以卡巴斯基為例,在防火牆的設置中添加“包過濾規則”,需要注意的是,屬性選擇“本地端口”。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM