Serv-U FTP 設置支持被動(PASV)模式連接

最近發現VPS的FTP經常出現 “數據Socket連接錯誤超時”的錯誤,本來也沒用太在意,因爲過一會FTP軟件會通過PORT連接,但是客戶反映FTP軟件經常連接不上,甚至出現了上傳不了文件的錯誤,心想這下麻煩了,是必須解決它的時候了。

 

於是在網絡上找到了一篇關於這方面設置的文章,我把我的操作導致寫一些,以便給遇到類似問題的朋友參考。

設置支持被動(PASV)模式連接:

我們vpt上面裝的Serv-U ,在Serv-U中設置的端口是33001-33009,確認是打開的

本地服務器--》設置--》高級--》PASV 端口範圍--》寫上範圍,可以寫上33001-33009--》FTP設置完畢

進入本地連接屬性--》TCP/IP屬性--》高級--》選項--》TCP/IP篩選--》屬性--》如果 啓動 TCP/IP 篩選(所有適配器) 是選中的(不是的話直接關閉)--》只允許裏添加上 TCP端口:33001,33002,33003.....,33009

設置PASV常見的錯誤:

[右] 數據 Socket 錯誤: 連接被拒

[右] 列表錯誤

原因:  Serv-U上設置的PASV端口號在網卡TCP/IP上沒有開解決方法參照最上面

網上提供相關介紹二:

FTP協議有兩種工作方式:PORT方式和PASV方式,中文意思爲主動式和被動式。

  PORT(主動)方式的連接過程是:客戶端向服務器的FTP端口(默認是21)發送連接請求,服務器接受連接,建立一條命令鏈路。當需要傳送數據時,服務器從20端口向客戶端的空閒端口發送連接請求,建立一條數據鏈路來傳送數據。

  PASV(被動)方式的連接過程是:客戶端向服務器的FTP端口(默認是21)發送連接請求,服務器接受連接,建立一條命令鏈路。當需要傳送數據時,客戶端向服務器的空閒端口發送連接請求,建立一條數據鏈路來傳送數據。

  因爲PORT方式在傳送數據時,由服務器主動連接客戶端,所以,如果客戶端在防火牆或NAT網關後面,用PORT方式將無法與Internet 上的 FTP服務器傳送文件。這種情況需要使用PASV方式。幾乎所有的ftp客戶端軟件都支持這兩種方式。特殊的典型例子是ie,ie默認是用PORT方式的。如果要在ie裏啓用PASV方式,請打開ie,在菜單裏選擇:工具 -> Internet選項 -> 高級,在“使用被動ftp”前面打上鉤(需要IE6.0以上才支持)。

軟件環境: Serv-U 5.x以上  Windows2000|Windows2003平臺  本文以英文版爲例,中文版用戶自行翻譯

注意事項:

一.進入serv-u管理界面,Settings--Advenced中的PASV port range設置端口範圍,本人估計的設置標準如下(非官方的標準):

ftp服務平均在線人數超過100人 建議端口範圍在30-40,如填寫10000-10035

ftp服務平均在線人數30-60人 建議端口範圍在20左右,如填寫10000-10020

ftp服務平均在線人數5-20人左右 建議端口範圍在5-10,如填寫10000-10010

二.在Domains--(建立的域,如本站域設置爲ftp.yongfa365.com)--Settings--Advenced中Allow passive mode data transfers,use ip這個前面的框選中,use ip不需要填寫

三.重新啓動serv-u服務,可以在命令行模式下運行netstat -an|more查看tcp的1000-100xx的端口是否已經正常開放

四.如果tcp/ip篩選,ip安全策略,網絡防火牆中限制了以上pasv端口,應該先解除屏蔽

網上提供相關介紹二:

有許多朋友的 FTP 服務器是不支持 PASV 模式的,登入時要取消 PASV 模式才行,現將幾種 FTP 下載工具的取消方法公佈如下:

1.把 flashget 的 pasv 模式關掉的方法

        點菜單上的“工具"->“選項"->“代理服務器"-> “直接連接"->編輯->把“ pasv 模式"前的勾勾去掉,一路確定回來

2.把 Cutftp 的 pasv 模式關掉的方法

        點菜單上的“文件"->“站點管理"->在“站點管理器"窗口 ->“新建站點"->填上“域名"->“編輯"->“常規"-> 把“使用 pasv 模式"前的勾勾去掉

3.把 FlashFXP 的 pasv 模式關掉的方法

        點菜單上的“站點"->“站點管理器"->站點管理器窗口-> “新建站點"->填上“域名"->“選項"->把“使用被動模式"前的勾勾去掉->“應用" 即可

4.把 NetAnts 的 pasv 模式關掉的方法

        點菜單上的"選項"->"參數設置"->"代理"->“直接連接"->編輯->把“ pasv 模式"前的勾勾去掉,一路確定回來

相信大家都知道FTP是什麼啦,但我相還有很多人不知道什麼是PASV和PORT,或者你知道但不知道他們到底是什麼

下面介紹一下這兩種模式吧:

PORT其實是Standard模式的另一個名字,又稱爲Active模式?中文意思是“主動模式

PASV也就是Passive的簡寫中文就是“被動模式

兩者之間有什麼不同:

不同之處是由於PORT這個方式需要在接上TCP 21端口後,服務器通過自己的TCP 20來發出數據?並且需要建立一個新的連接來傳送檔案?而PORT的命令包含一些客戶端沒用的資料,所以有了PASv的出現

而PASV模式就當然擁有PORT模式的優點及去掉一些PORT的缺點,PASV運行方式就是當服務器接收到PASV命令時,就會自動從端口1024到5000中隨機選擇,而且還會使用同一個端口來傳送數據,不用建立新的連接

PASV方式設置:

          所有FTP服務器軟件都支持PORT方式大部分FTP服務器軟件PORT方式和PASV方式都支持,Serv-U默認配置下兩種方式都支持,如果要關閉 PASV方式,請打開Serv-U,進入 Domains -> user.dns0755.net -> Settings -> Advanced -> 把“Allow passive mode data transfers"前面的鉤去掉

          使用內網標準版的用戶,不能取消PASV方式

PASV方式與防火牆的問題:

          公網和內網TrueHost用戶,如果安裝了防火牆,需要在防火牆上打開一些端口給FTP的PASV模式使用,否則使用PASV模式無法登錄。在 Serv-U的Local Server -> Settings -> Advanced -> PASV port range裏,填入給PASV模式使用的本地端口範圍,如60000-60020,如果使用Win 9x/Me,請把端口範圍限制在5個以內,如果使用Win NT/2000/XP/2003,請把端口範圍限制在20個以內?之後,再在防火牆裏打開這個範圍的端口就可以了

          使用內網標準版的用戶不需要設置此選項

          防火牆的設置方法

          注:Win XP自帶的防火牆會自動爲FTP打開PASV端口,如果使用Win XP防火牆就不需要設置

公網+端口映射的注意事項:

        通過ADSL共享器/路由器或其他網關上網,採用網關端口映射而使用公網動態域名的用戶,建立FTP服務器,用PORT方式訪問是沒問題的,要用PASV方式訪問,需要做如下設置:

        1、在Domains -> user.dns0755.net裏選擇“Enable dynamic DNS"?之後,右邊會多出一個選項“Dynamic DNS",點擊“Dynamic DNS",在“IP name"裏輸入域名“user.dns0755.net",“IP address"留空不設按,“F5"即可得到IP地址,點擊“Apply"保存設置

        2、參考上面的“PASV方式與防火牆的問題"中的說明,設置PASV端口範圍,例如 60000 - 60020

        3、在網關(ADSL共享器/路由器)上爲PASV端口設置映射?例如把網關的 60000 - 60020 端口映射到本機的 60000 - 60020 端口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章