現在越來越多的人喜歡在家里辦公或者在出差途中進行移動辦公,有時需要通過家里的臺式電腦或筆記本上網,并通過單位的局域網代理服務器從局域網的FTP服務器上下載文檔資料,這就牽扯到如何利用反向代理訪問內網FTP站點的問題了。本文所要探討的就是如何在Windows2000/2003系統下架設FTP服務器,如何安裝最新的代理服務器CCProxy以及如何實現上述的反向代理功能。
什么是FTP?
眾所周知,FTP(File Transfer Protocol 文件傳輸協議)是互聯網上用來傳送文件的協議。在互聯網上通過FTP 服務器可以進行文件的上傳(Upload)或下載(Download)。FTP是實時聯機服務,在使用它之前必須是具有該服務的一個用戶(用戶名和口令),工作時客戶端必須先登錄到作為服務器一方的計算機上,用戶登錄后可以進行文件搜索和文件傳送等有關操作,如改變當前工作目錄、列文件目錄、設置傳輸參數及傳送文件等。使用FTP可以傳送所有類型的文件,如文本文件、二進制可執行文件、圖象文件、聲音文件和數據壓縮文件等。
起初, FTP并不是應用于IP網絡上的協議,而是ARPANET網絡中計算機間的文件傳輸協議, ARPANET是美國國防部組建的老網絡,于1960-1980年使用。在那時, FTP的主要功能是在主機間高速可靠地傳輸文件。
在互聯網發展的早期階段,用FTP傳送文件約占整個互聯網的通信量的三分之一,而由電子郵件和域名系統所產生的通信量還要小于FTP所產生的通信量。只是到了1995年,WWW的通信量才首次超過了FTP,所以從互聯網的歷史角度看,FTP發揮著極其重要的角色。
目前FTP仍然保持其可靠性,即使在今天,它還允許文件遠程存取。這使得用戶可以在某個系統上工作,而將文件存貯在別的系統。例如,如果某用戶運行Web服務器,需要從遠程主機上取得HTML文件和CGI程序在本機上工作,他需要從遠程存儲站點獲取文件(遠程站點也需安裝Web服務器)。當用戶完成工作后,可使用FTP將文件傳回到Web服務器。采用這種方法,用戶無需使用Telnet登錄到遠程主機進行工作,這樣就使Web服務器的更新工作變得如此的輕松。
FTP是TCP/IP的一種具體應用,它工作在OSI模型的第七層,TCP模型的第四層上,即應用層,使用TCP傳輸而不是UDP,這樣FTP客戶在和服務器建立連接前就要經過一個被廣為熟知的"三次握手"的過程,它帶來的意義在于客戶與服務器之間的連接是可靠的,而且是面向連接,為數據的傳輸提供了可靠的保證。
FTP并不像HTTP協議那樣,只需要一個端口作為連接(HTTP的默認端口是80,FTP的默認端口是21),FTP需要2個端口,一個端口是作為控制連接端口,也就是21這個端口,用于發送指令給服務器以及等待服務器響應;另一個端口是數據傳輸端口,端口號為20(僅PORT模式),是用來建立數據傳輸通道的,主要有3個作用:
1) 從客戶向服務器發送一個文件。
2) 從服務器向客戶發送一個文件。
3) 從服務器向客戶發送文件或目錄列表。
我們利用Windows2000/2003系統中的IIS5.0(互聯網信息服務組件)或者IIS6.0,該組件默認情況下不能被安裝,使用時需要手工添加組件的方式進行安裝,安裝完成后,我們就可以利用IIS組件,能夠方便快捷的組建一個局域網內部的FTP服務器。內部FTP服務器的IP地址可選用C類私有地址192.168.0.1-192.168.0.254中的任意一個較為合適,子網掩碼為255.255.255.0。
打開服務器的“控制面板”,進入“管理工具”,選擇“互聯網 信息服務(IIS)管理器”,如下圖1所示:
![]() |
右鍵單擊打開“默認FTP站點”的屬性對話框,如圖2所示。在圖2中FTP站點選項卡中相應位置填上FTP站點標識,包括描述、IP地址、TCP端口。
|
在圖3中的“安全帳戶”中選擇“允許匿名連接”,對于“只允許匿名連接”一般不選,這樣可以通過其他機器來登錄管理此FTP站點。
在圖4中可為FTP選擇路徑,將本機中的某個文件夾作為FTP站點的主內容。
![]() |
對于圖5中的目錄安全性,可用于限制局域網內的用戶使用本FTP服務器,提高FTP站點的安全性,使用是可以采用“授權訪問”和“拒絕訪問”
![]() |
至此,FTP服務器架設完成。此時,局域網內部任何一臺機器都可以訪問剛剛配置完成的FTP服務器了,只需要從命令提示符下通過ftp 192.168.0.1命令登錄或者從IE登錄,如圖6所示。
什么是代理服務器?
代理服務器(Proxy Server)就是個人網絡和互聯網服務商之間的中間代理機構,它負責轉發合法的網絡信息,并對轉發進行控制和登記。
目前使用的互聯網是一個典型的客戶機/服務器結構,當用戶的本地機與互聯網連接時,通過本地機的客戶程序比如瀏覽器或者軟件下載工具發出請求,遠端的服務器在接到請求之后響應請求并提供相應的服務。
代理服務器處在客戶機和服務器之間,對于遠程服務器而言,代理服務器是客戶機,它向服務器提出各種服務申請;對于客戶機而言,代理服務器則是服務器,它接受客戶機提出的申請并提供相應的服務。也就是說,客戶機訪問互聯網時所發出的請求不再直接發送到遠程服務器,而是被送到了代理服務器上,代理服務器再向遠程的服務器提出相應的申請,接收遠程服務器提供的數據并保存在自己的硬盤上,然后用這些數據對客戶機提供相應的服務。
對于使用代理服務器上網的用戶來說,合理設置并使用它有很多好處。
1、能加快對網絡的瀏覽速度
代理服務器接收遠程服務器提供的數據保存在自己的硬盤上,如果有許多用戶同時使用這一個代理服務器,他們對互聯網站點所有的要求都會經由這臺代理服務器,當有人訪問過某一站點后,所訪問站點上的內容便會被保存在代理服務器的硬盤上,如果下一次再有人訪問這個站點,這些內容便會直接從代理服務中獲取,而不必再次連接遠程服務器。因此,它可以節約帶寬、提高訪問速度。
2、節省IP開銷
使用代理服務器時,所有用戶對外只占用一個IP,所以不必租用過多的IP地址,降低網絡的維護成本。
3、可以作為防火墻
代理服務器可以保護局域網的安全,起到防火墻的作用:對于使用代理服務器的局域網來說,在外部看來只有代理服務器是可見的,其他局域網的用戶對外是不可見的,代理服務器為局域網的安全起到了屏障的作用。另外,通過代理服務器,用戶可以設置IP地址過濾,限制內部網對外部的訪問權限。同樣,代理服務器也可以用來限制封鎖IP地址,禁止用戶對某些網頁的訪問。
4、提高訪問速度
通常代理服務器都設置一個較大的硬盤緩沖區(可能高達幾個GB或更大),當有外界的信息通過時,同時也將其保存到緩沖區中,當其他用戶再訪問相同的信息時,則直接由緩沖區中取出信息,傳給用戶,以提高訪問速度。
5、方便對用戶的管理
通過代理服務器,用戶可以設置用戶驗證和記帳功能,對用戶進行記帳,沒有登記的用戶無權通過代理服務器訪問互聯網。并對用戶的訪問時間、訪問地點、信息流量進行統計。
最新代理服務器CCProxy的安裝與設置
從 http://www.youngzsoft.com 下載最新的CCProxy軟件。注意軟件有版本號和發布日期,應確保版本號和發布日期都是最新的。CCProxy的功能大部分與Sygate、Wingate相同,是一個優秀的代理服務器軟件。利用該軟件我們可以很方便使局域網內的機器通過共享ADSL來訪問外網的互聯網資源,在本文中以CCProxy6.3.4演示版為例進行說明,如圖7所示,演示版最多只提供3個用戶,如果要使更多用戶可以使用,請注冊購買正式版本。
![]() |
1)代理服務器的局域網設置
如果服務器安裝了兩塊網卡或者多塊,在網卡IP設置上需要注意,不要將網卡的IP設置在一個網段內,這樣會造成路由混亂。比如一塊網卡是192.168.0.1,另一塊網卡就不要設置成192.168.0.2,可以設置為192.168.1.1,如果是ADSL或者是校園網的用戶,可從ISP處獲得外網的公共IP地址或者是通過DHCP獲得的自動分配的IP地址。
服務器的網卡一般不要設置網關,尤其是連接局域網的網卡,不要設置網關,否則很容易造成路由沖突。
如果沒有配置好局域網,建議按照下面的方法配置局域網。分配好局域網機器的IP。一般是192.168.0.1、192.168.0.2、 192.168.0.3、…192.168.0.254, 其中服務器是192.168.0.1,其他IP地址為客戶端的IP地址。子網掩碼為255.255.255.0,DNS為192.168.0.1。比如我們前面所說的內網的FTP服務器就使用了地址192.168.0.2以及子網掩碼255.255.255.0。
2)CCProxy啟動失敗原因
如果CCProxy在安裝完成后啟動失敗,原因是多方面的,包括以下幾種:
1.服務器上安裝了其他代理服務器軟件,由于某些默認端口是相同的,很容易造成沖突。這時需要停用其他代理服務器。但您最好是在安裝前將其反安裝掉,因為有時停止不一定有效,有些代理服務器軟件是作為NT服務方式運行的(關閉服務后,機器重啟后又會自動運行)。同樣客戶端如果安裝了某些代理服務器軟件的客戶端,也需要反安裝,否則會影響客戶端與代理服務器的通訊。
2.服務器缺省安裝了Windows自帶的DNS服務器。這種情況一般多發生在Win2000上。因為Win2000已經自動安裝了DNS服務器,無需使用CCProxy的DNS服務,可以取消CCProxy的DNS代理:“設置” -> 取消"DNS"選項。
3.如果無需使用SOCKS v4代理(這是一種老代理協議,已經很少使用了),可以取消CCProxy的DNS代理:“設置”—— 取消"DNS"選項。只有這個代理需要DNS服務。
4.另外由于在服務器上安裝了殺毒軟件、防火墻軟件也有可能導致啟動失敗,原因是殺毒軟件將這些代理所使用的端口關閉了,致使各類代理無法正常啟動。筆者推薦您使用Norton殺毒軟件(及其防火墻),經過實際測試和使用,CCProxy和Norton可以保持很好的兼容性。
怎樣實現反向代理功能
用戶從異地通過互聯網訪問內部局域網,這就是反向代理功能。具體方法是:
1)假設局域網代理服務器IP為:192.168.0.1,必須直聯互聯網,也就是說此服務器同時可訪問局域網網和互聯網,其互聯網IP為:202.192.237.133;
局域網FTP服務器IP為:192.168.0.2,開放了內部FTP服務,端口為21,并且使用IIS將FTP服務器按照前面所說的設置配置成功并進行測試;
遠端機器(例如家里)互聯網真實IP為:202.192.237.134;
2)在192.168.0.1上安裝CCProxy;
3)在“設置”(如圖8所示)—>“端口映射”里增加一個映射:192.168.0.2,TCP/IP協議,目標端口21,本地端口9999, 如圖9所示。
![]() |
![]() |
4)在CCProxy賬號中增加一個允許訪問的賬號(例如家里的IP)202.192.237.134或者采用其他辦法進行配置。
5)那么在家里通過互聯網訪問:Ftp:// 202.192.237.133:8888 即可訪問局域網的內部的FTP站點資源了。
(責任編輯:城塵 68476636-8003)