在Linux下,我們可以用wu-ftp、tftp-server、proftpd、gssftp、vsftp等FTP服務(wù)程序來構(gòu)建FTP服務(wù)器。由于wu-ftp(Washington University Ftp)廣泛使用在各種Linux發(fā)行版本和多種的Unix(其中包括了IBM AIX、FreeBSD、HP-UX、各種BSD、Solaris等)中,同時它在因特網(wǎng)中的占有量超過了50%,并且現(xiàn)在Linux發(fā)行版本中都帶有2.6版本的wu-ftp,因此下面以它為例介紹在Linux下如何實(shí)現(xiàn)FTP虛擬主機(jī)。
虛擬主機(jī)安裝要求
wu-ftpd提供了虛擬主機(jī)的功能。它通過一個FTP軟件在同一臺主機(jī)上提供不同F(xiàn)TP服務(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 |
配置文件,以及
/usr/bin/ftpcount /usr/bin/ftpwho /usr/sbin/ftprestart /usr/sbin/ftpshut /usr/sbin/in.ftpd |
等可執(zhí)行的程序,當(dāng)然還包含一些help,man的文檔。只要系統(tǒng)中包含了這些文件,就說明FTP服務(wù)器已經(jīng)安裝成功。
在這些文件中有兩個文件是關(guān)于虛擬主機(jī)配置的,其中ftpservers 文件控制了當(dāng)客戶登陸不同虛擬主機(jī)時候,服務(wù)器采用不同的配置文件來進(jìn)行功能設(shè)置。例如在ftpservers中增加下面兩個語句:
172.20.66.10 /etc/ ftpaccess.1 172.20.66.20 /etc/ ftpaccess.2 |
這兩行參數(shù)指定了當(dāng)用戶從10 IP訪問的時候,服務(wù)器指定的是ftpaccess.1的配置文件,而當(dāng)用戶從20 IP訪問的時候,服務(wù)器指定的是ftpaccess.2的配置文件。在下面配置虛擬主機(jī)的過程中,需要這個文件的配合使用。