美國服務(wù)器搭建的虛擬主機(jī),具體就是使用軟件技術(shù)把一臺美國服務(wù)器主機(jī)分成多臺相對有獨(dú)立的域名和IP地址的虛擬主機(jī),每臺虛擬主機(jī)都具有完整的Internet美國服務(wù)器功能。美國服務(wù)器搭建的虛擬主機(jī)之間完全獨(dú)立,使用操作跟獨(dú)立美國服務(wù)器主機(jī)大致一樣。
美國服務(wù)器在Linux系統(tǒng)下可以用多種FTP服務(wù)程序來構(gòu)建FTP服務(wù)器,而wu-ftp在在因特網(wǎng)中的占有量超過了50%,并且現(xiàn)在Linux發(fā)行版本中都帶有2.6版本的wu-ftp,因此本文就以wu-ftp為例,為大家介紹美國服務(wù)器Linux系統(tǒng)上如何實(shí)現(xiàn)虛擬FTP空間。
wu-ftpd提供了虛擬主機(jī)的功能,它通過一個FTP軟件在同一臺主機(jī)上提供不同FTP服務(wù)器,以主機(jī)名稱或IP來區(qū)分各個不同的虛擬主機(jī)。wu-ftp有rpm和tar兩種安裝方式。rpm安裝比較簡單,可以直接通過rpm ivh wu-ftp*.rpm 就可以安裝完成。下面主要介紹tar安裝方式。
對于沒有rpm安裝程序包的Linux,可以從http://www.wu-ftpd.org下載一個源程序tar代碼包,這樣可以更好地按照需求來定制wu-ftp所能支持的各種功能,包含一些附加的upload的速率、虛擬主機(jī)等功能。
1)解壓縮包tar -zxvf wu-ftpd-current.tar.gz:#cd wu-ftp
2)配置所需要的附加功能:#./configure ——enable-virtual
這個enable-virtual參數(shù)必須進(jìn)行設(shè)定,通過設(shè)定了這個參數(shù),提供虛擬主機(jī)的服務(wù),同時增加了對FTP服務(wù)器的吞吐量,這樣wu-ftp就擁有了虛擬主機(jī)的功能。
3)進(jìn)行編譯及安裝
# make
# make install
通過以上各個步驟,就已經(jīng)成功地安裝在美國服務(wù)器Linux系統(tǒng)上了。現(xiàn)在系統(tǒng)上應(yīng)該包含了以下配置文件:
/etc/ftpaccess
/etc/ftpconversions
/etc/ftpgroups
/etc/ftphosts
/etc/ftpusers
以及以下可執(zhí)行程序:
/usr/bin/ftpcount
/usr/bin/ftpwho
/usr/sbin/ftprestart
/usr/sbin/ftpshut
/usr/sbin/in.ftpd
當(dāng)然還包含一些help,man的文檔。只要系統(tǒng)中包含了這些文件,就說明FTP服務(wù)器已經(jīng)安裝成功。
在這些文件中有兩個文件是關(guān)于虛擬主機(jī)配置的,其中ftpservers 文件控制了當(dāng)客戶登陸不同虛擬主機(jī)時候,服務(wù)器采用不同的配置文件來進(jìn)行功能設(shè)置。例如在ftpservers中增加下面兩個語句:
1)xxx.xx.xx.10 /etc/ ftpaccess.1
2)xxx.xx.xx.20 /etc/ ftpaccess.2
這兩行參數(shù)指定了當(dāng)用戶從10 IP訪問的時候,服務(wù)器指定的是ftpaccess.1的配置文件,而當(dāng)用戶從20 IP訪問的時候,服務(wù)器指定的是ftpaccess.2的配置文件。在下面配置虛擬主機(jī)的過程中,需要這個文件的配合使用。
進(jìn)行配置虛擬主機(jī):
1、給美國服務(wù)器主機(jī)綁定多IP
wu-ftp的虛擬主機(jī)是建立在同一個主機(jī)、不同IP的基礎(chǔ)上,因此要在同一臺機(jī)器上配置多個IP地址。其中一個方法就是在一塊網(wǎng)卡上綁定多個IP地址。
如果機(jī)器上有一塊網(wǎng)卡,并且通過這個網(wǎng)卡來監(jiān)聽FTP的服務(wù)請求,我們就可以通過ifconfig命令來實(shí)現(xiàn)這個功能)
1)# ifconfig eth0:0 xxx.xx.xx.2 up
2)# ifconfig eth0:1 xxx.xx.xx.3 up
這里設(shè)置兩個FTP虛擬主機(jī),因此就在網(wǎng)卡上綁定兩個IP地址。在Linux中,一個網(wǎng)卡理論上可以綁定16個IP地址。如果用戶不想通過命令來執(zhí)行,也可以自行改變/etc/sysconfig/networking中的配置文件,來達(dá)到同樣目的。
2、配置ftpservers文件
關(guān)于ftpservers文件上面已經(jīng)提到,在此例中可以用到以下的配置:
1)xxx.xx.xx.2 /etc/ftpaccess1
2)xxx.xx.xx.3 /etc/ftpaccess2
該文件給出了存放虛擬主機(jī)配置文件的路徑,在客戶端對FTP服務(wù)器發(fā)出請求的時候,服務(wù)器將客戶端請求的IP在該文件中進(jìn)行查找,看看是否有匹配的配置文件。如果有匹配的配置文件,就調(diào)用該IP地址對應(yīng)的目錄中的配置文件作為該客戶端的配置文件。如果沒有發(fā)現(xiàn)匹配項(xiàng),就使用默認(rèn)的配置文件。
在該文件中用IP地址或主機(jī)名都可以。如果用主機(jī)名,就需要/etc/hosts和DNS的支持,來進(jìn)行解析為最終的IP。由于在配置虛擬主機(jī)中,這個文件是可選的,用戶可以不用為每個虛擬主機(jī)都設(shè)置不同的配置文件,通過在主ftpaccess文件中做一些設(shè)置也可以達(dá)到相應(yīng)目的。下面就通過配置ftpaccess來實(shí)現(xiàn)虛擬主機(jī)的功能。
3、配置ftpaccess文件中的虛擬主機(jī)部分
虛擬服務(wù)器的ftpaccess配置文件與不提供虛擬服務(wù)器版本相比,增加了virtia、root、logfile等多個指令,這些都是在編譯源代碼的時候產(chǎn)生的。下面就這些參數(shù)進(jìn)行說明。
1)Virtual
上面各個參數(shù)設(shè)定了虛擬主機(jī)的各種基本配置,其中virtual參數(shù)前綴說明下面的參數(shù)是為了設(shè)定虛擬主機(jī)而設(shè)定的;address指定了虛擬主機(jī)的IP地址,這里應(yīng)該是xxx.xx.xx.2和xxx.xx.xx.3兩個IP.
下面的參數(shù)都是建立在virtual下面的子參數(shù):
1. root 指定了該虛擬主機(jī)的ftp根目錄;
2. banner 指定了該虛擬主機(jī)的系統(tǒng)提示信息;
3. logfile 指定了該虛擬主機(jī)的日志文件所在的位置;
4. hostname 指定了該虛擬主機(jī)的主機(jī)名稱;
5. email 指定了該虛擬主機(jī)管理者的E-mail地址。
2)virtual—allow [ ……]
Virtual—deny [ ……]
上面這些參數(shù)設(shè)定虛擬主機(jī)的權(quán)限。其中allow和 deny都是virtual的子參數(shù),它們設(shè)定是否可以訪問虛擬主機(jī)的設(shè)置。一般情況下real和guest兩個class是用戶不允許訪問虛擬主機(jī),該兩個指示用來重新對允許和拒絕訪問的虛擬主機(jī)的用戶進(jìn)行定義,通過這些設(shè)置和ftpuser的搭配,可以更加細(xì)化美國服務(wù)器主機(jī)。
3)defaultserver deny [ ……]
defaultserver allow [ ……]
defaultserver private
上面這幾個參數(shù)設(shè)定了虛擬主機(jī)中訪問權(quán)限默認(rèn)值。請注意它們不是virtual的子參數(shù)。其中:
defaultserver private:指定了默認(rèn)的虛擬服務(wù)器是否拒絕anonymous用戶訪問。
defaultserver deny:指定了默認(rèn)的虛擬服務(wù)器拒絕哪些用戶的訪問。
defaultserver allow:指定了默認(rèn)的虛擬服務(wù)器接受哪些用戶的訪問。
美國服務(wù)器用戶可以通過以上配置參數(shù),再結(jié)合FTP其它的配置文件,這樣一臺美國服務(wù)器主機(jī)就可以作為多臺FTP服務(wù)器使用。用戶可以再針對自己的需求,結(jié)合其它的wu-ftp的配置說明,來進(jìn)行定制FTP服務(wù)器了。
關(guān)注美聯(lián)科技,了解更多IDC資訊!