☆梁德銘
(龍巖第一中學(xué),福建龍巖 364000)
FTP(File Transfer Protocol)服務(wù)作為校園網(wǎng)絡(luò)的主要服務(wù)之一,為師生教育教學(xué)資源共享發(fā)揮著重要作用。Serv-U是一款由RhinoSoft.com開發(fā)的 FTP服務(wù)器軟件,它功能強(qiáng)大又易于使用。Serv-U不僅100%遵從通用FTP標(biāo)準(zhǔn),也包括眾多的獨特功能可為每個用戶提供文件共享完美解決方案。本文以 Serv-U V6..4.0.6 中文版為平臺,介紹如何合理組合軟件提供的各種技術(shù)來搭建校園FTP服務(wù)。
校園FTP服務(wù)與一般的FTP服務(wù)相比,有著更特殊的需求,需要更為復(fù)雜的文件共享解決方案,其需求體現(xiàn)在:
(1)職工、學(xué)生、年級(屆別)、學(xué)科及學(xué)校等(以下統(tǒng)稱為用戶)需要不同的文件夾用于存放自己的共享資源,以利于資源分類和管理。
(2)一個用戶同時身兼多個角色。例如用戶張三是一名2010屆語文學(xué)科老師,同時又是2010屆的年級主任,那么他需要有語文學(xué)科文件夾、2010屆文件夾、私人文件夾及學(xué)校辦公文件夾的訪問權(quán)限及某些文件夾的編輯權(quán)限。
(3)不同用戶應(yīng)給與不同的磁盤配額,不然再大的磁盤空間都會有被擠滿的一天。
(4)為保證用戶私人資源的私密性,必須把用戶鎖定在主目錄,即用戶登錄后的訪問范圍只能限定在自己的私人文件夾。
根據(jù)以上特點,作者利用Serv-U的卓越性能,經(jīng)過一番摸索得到一個完美的解決方案。
選擇一個空間足夠大的非系統(tǒng)盤,新建一個名為“FTP”的文件夾(以下文件夾新建操作都在此文件夾下進(jìn)行)。新建一個名為“學(xué)校公共”的文件夾,用于存放所有人可訪問的資源。新建一個名為“學(xué)校辦公”的文件夾,用于存放所有教工可訪問的資源。按不同年級分別新建以屆別命名的文件夾,用于存放自己年級的資源。按不同學(xué)科分別新建以學(xué)科名稱命名的文件夾,用于存放自己學(xué)科的資源。分別新建以每個教工名字命名的文件夾,用于存放教工自己的私人資源。
軟件安裝很容易,不再贅述,只是在選擇安裝路徑時建議不要安裝到系統(tǒng)盤,這樣做的好處是一旦系統(tǒng)盤崩潰重裝后,只要把原Serv-U的配置文件(ServUAdmin.ini和ServUDaemon.ini) 覆蓋到新安裝的Serv-U目錄下即可立即使用。
首次運(yùn)行Serv-U將提示進(jìn)行一些基本配置。在提示是否把Serv-U作為系統(tǒng)服務(wù)允許時選擇是;在ip地址輸入框中輸入本機(jī)的ip地址,如果不填,默認(rèn)為本機(jī)所有ip地址;在域名輸入框中輸入域名,沒有的話可以隨便輸入一個名字,例如“ftptest”;在是否創(chuàng)建匿名訪問用戶時,選擇是:訪問目錄設(shè)為“學(xué)校公共”文件夾,采用默認(rèn)權(quán)限,選擇鎖定匿名用戶于主目錄。
在本方案中,匿名訪問用戶Anonymous用于實現(xiàn)學(xué)校公共資源的共享,任何人通過地址“ftp://域名”,選擇匿名訪問即可訪問“學(xué)校公共”文件夾下的內(nèi)容,滿足社會和學(xué)生的訪問需求。非學(xué)校公共資源通過給具體的用戶賬號授權(quán)的方式訪問,每個用戶賬號對應(yīng)一名教職工。下面將介紹用戶賬號的創(chuàng)建:
圖1 創(chuàng)建用戶賬號
(1)創(chuàng)建用戶賬號(如圖1)。以建立張三的賬號為例,在左窗格“用戶”上右擊,選擇“新建用戶”,依次設(shè)定用戶名稱為ZS、密碼為123、主目錄指向名為“張三”的文件夾、鎖定用戶于主目錄,就完成了用戶的創(chuàng)建。
(2)配置用戶賬號(如圖1)。以建立張三的賬號為例,在左窗格中左擊要配置的用戶ZS,在右窗格的“目錄訪問”標(biāo)簽中,勾選除“執(zhí)行”外的全部權(quán)限,在“配額”標(biāo)簽中勾選“啟用磁盤配額”選項,設(shè)定最大磁盤空間為1024MB。
接著按上面的步驟逐個建立其他教職工的用戶賬號,至此我們實現(xiàn)了前述校園FTP服務(wù)需求分析的第1、第3及第4點。
那么如何實現(xiàn)需求分析中的第2點呢?有讀者可能會想,我在張三的“目錄訪問”中再添加對“學(xué)校辦公”、“語文”及“2010屆”文件夾的訪問權(quán)限不就解決了。事實上這種解決方案會與需求分析中的第3、第4點沖突,因為新增的三個文件夾所占磁盤空間會一并計入到我們設(shè)定的最大1024MB中來,這樣張三就無法真正享有1024MB的磁盤空間,同時我們鎖定了用戶只能訪問其主目錄(私人文件夾),用戶登錄到FTP后,無法看到這三個新增的文件夾。要實現(xiàn)需求分析中的4點互不沖突,我們必須使用Serv-U提供的“虛擬路徑映射”技術(shù)。
什么是虛擬路徑映射呢?簡而言之,虛擬路徑映射就是把用戶主目錄之外文件夾映射到某個文件夾下,作為這個文件夾的一個子文件夾。這是解決前述幾個貌似相互矛盾的需求的關(guān)鍵技術(shù)。
圖2 創(chuàng)建虛擬路徑
我們對需要被用戶公共訪問的文件夾(即各年級文件夾、各學(xué)科文件夾、學(xué)校辦公)都進(jìn)行虛擬路徑映射。方法如下:
(1)創(chuàng)建虛擬路徑映射(如圖2)。以創(chuàng)建“語文”文件夾的虛擬路徑映射為例,選擇左窗格ftptest域中的“設(shè)置”,在右窗格中選擇“虛擬路徑”標(biāo)簽,點擊“虛擬路徑映射”中的“添加”按鈕。在彈出的創(chuàng)建向?qū)е?,第一步是設(shè)置物理路徑,即對哪個文件夾進(jìn)行映射,我們選擇“語文”文件夾;第二步是設(shè)置映射物理路徑到什么位置,因為“語文”文件夾需要被所有語文老師訪問,所以我們設(shè)置為“%home%”,表示映射到應(yīng)用了該虛擬路徑的用戶主目錄下;第三部是設(shè)置映射的路徑名稱,即被映射文件夾呈現(xiàn)給用戶時的別名,我們在此設(shè)為“語文學(xué)科公共文件夾”。重復(fù)此步驟,逐個建立其他需要被公共訪問的文件夾。
(2)應(yīng)用虛擬路徑到用戶。根據(jù)需求分析,以用戶張三為例,我們需要把“學(xué)校辦公”、“2010屆”、“語文”這三個文件夾映射到張三的主目錄下,作為其主目錄下的子文件夾。如圖1所示,選擇用戶ZS,在其“目錄訪問”標(biāo)簽中依次添加張三需要的三個文件夾并根據(jù)需要設(shè)定每個文件夾的訪問權(quán)限。應(yīng)用后的登錄效果如圖3。
圖3 應(yīng)用虛擬路徑后登錄效果
至此校園FTP服務(wù)的全部需求都得到滿足,但是把這些虛擬路徑逐個應(yīng)用到需要的用戶,工作量非常大,并且在后續(xù)的維護(hù)如果需要改動權(quán)限,也需要逐個修改目錄訪問權(quán)限。所以在本方案中放棄應(yīng)用虛擬路徑到用戶這種費(fèi)時費(fèi)力的方法,而是借助Serv-U的組策略把虛擬路徑應(yīng)用到用戶組,把需要的用戶加入相應(yīng)組的方法來實現(xiàn)。
如果若干用戶需要一組相同的權(quán)限,我們不必為每一個用戶單獨設(shè)置,只需要對組設(shè)置,然后把需要的用戶加入這個組即可,組內(nèi)的用戶繼承了組一切屬性。我們對需要被用戶公共訪問的文件夾(即各年級文件夾、各學(xué)科文件夾、學(xué)校辦公)建立相應(yīng)的兩個用戶組,分別為訪問組和管理組。
(1)創(chuàng)建用戶組(如圖4)。在左窗格“組”上右擊,選擇“新建組”,輸入組名稱,如“語文訪問組”,就完成了用戶組的創(chuàng)建。按同樣的方法創(chuàng)建語文管理組。
(2)配置用戶組的訪問權(quán)限(如圖4)。選擇要配置的組,在右窗格的“目錄訪問”標(biāo)簽中添加該組需要訪問的文件夾和對該文件夾的訪問權(quán)限。訪問組只給與“讀取”、“列表”、“繼承”權(quán)限,管理組給與除“執(zhí)行”外的全部權(quán)限。
圖4 配置組的訪問權(quán)限
重復(fù)上面兩個步驟,逐個建立其他需要被公共訪問文件夾的兩個用戶組。
(3)把用戶加入到相應(yīng)組(如圖5)。在左窗格中選中要設(shè)置的用戶,在右窗格的“賬號”標(biāo)簽中,點擊組選擇按鈕,選擇用戶需要加入的組即可。以用戶張三為例,我們選擇“2010屆管理組”、“語文訪問組”、“學(xué)校辦公訪問組”,用戶登錄后效果如圖3。
圖5 把用戶加入到組
利用Serv-U的虛擬路徑映射技術(shù),我們解決了用戶被鎖定于主目錄后無法訪問主目錄之外公共文件夾的問題,同時保證了用戶磁盤配額不受公共文件夾的影響,其實虛擬路徑映射技術(shù)還可以解決磁盤空間不足的問題。利用用戶組技術(shù)實現(xiàn)了公共文件夾訪問的快捷部署與維護(hù)。軟件提供的技術(shù)本身是死的,在利用軟件實現(xiàn)某個需求的時候,我們要善于分析思考,多動手實驗,通過合理地組合軟件提供的各種技術(shù),往往會有超出意料之外的完美解決方案。
[1]RhinoSoft.com.Serv-U 幫助[CP/DK].
[2]RhinoSoft.com.掛接虛擬目錄[EB/OL].http://www.serv-u.cn/tech_11.htm,2010-5-12.
[3]playingfly.Serv-U 的虛擬路徑[EB/OL].http://blog.chinaunix.net/u/484/showart_317871.htm,2007-06-08.