為了實(shí)現(xiàn)Linux環(huán)境下的FTP服務(wù)器配置,絕大多數(shù)的Linux發(fā)行套裝中都選用的是Washington University FTP(Wu-Ftpd),這是一個(gè)性能優(yōu)秀的服務(wù)器軟件,由于它具有眾多強(qiáng)大功能和超大的吞吐量,Internet上的FTP服務(wù)器有60%以上采用了它。
安裝與運(yùn)行
以下我們以RedHat Linux為例。
1、安裝
根據(jù)服務(wù)對(duì)象的不同,F(xiàn)TP服務(wù)可以分為兩類:一類是系統(tǒng)FTP服務(wù)器,它只允許系統(tǒng)上的合法用戶使用;另一類是匿名FTP服務(wù)器,它允許任何人登錄到FTP服務(wù)器,和服務(wù)器連接后,在登錄提示中輸入Anonymous,即可訪問服務(wù)器。針對(duì)這兩種服務(wù),可以通過RedHat的第一張光盤安裝Wu-Ftpd的RPM包,只需以Root身份進(jìn)入系統(tǒng)并運(yùn)行下面的命令即可:
Rpm - ivh anonftp -x.x-x.i386.rpm
Rpm - ivh wu-ftpd-x.x.x-x.i386.rpm
其中-x.x-x和-x.x.x-x是版本號(hào)。
2、啟動(dòng)
和Apache一樣,Wu-Ftpd也可以配置為自動(dòng)啟動(dòng):執(zhí)行RedHat附帶的Setup程序,在“System Service”選項(xiàng)中選中Wu-Ftpd,按下[OK]按鈕確定退出即可。
自動(dòng)啟動(dòng)固然方便,但是,當(dāng)我們更改了Wu-Ftpd配置文件,需要用到手工啟動(dòng):
啟動(dòng):/usr/sbin/ftprestart
關(guān)閉:/usr/sbin/ftpshut
FTP服務(wù)器的配置
為了確保FTP服務(wù)器安全,必須設(shè)置一些重要的配置文件,以更好地控制用戶的訪問權(quán)限。這些配置文件是:/etc/ftpusers、/etc/ftpconversions、/etc/ftp-groups、/etc/ftpphosts、/etc/ftpaccess。利用這些文件,能夠非常精確地控制哪些人、在什么時(shí)間、從什么地點(diǎn)可以連接服務(wù)器,并且可以對(duì)他們連接后所做的工作進(jìn)行檢查跟蹤。
/etc/ftpusers:該文件夾中包含的用戶不能通過FTP登錄服務(wù)器,有時(shí)將需要禁止的用戶賬號(hào)寫入文件/etc/ftpuser中,這樣就可以禁止一些用戶使用FTP服務(wù)。
/etc/ftpconversions:用來配置壓縮/解壓縮程序。
/etc/ftpgroups:創(chuàng)建用戶組,這個(gè)組中的成員預(yù)先定義可以訪問FTP服務(wù)器。
/etc/ftpphosts:用來根據(jù)禁止或允許遠(yuǎn)程主機(jī)對(duì)特定賬戶的訪問,例如:
allow czc 192.168.0.0/24
deny cdd 10.0.0.0/8
表示允許czc用戶從192.168.0這個(gè)網(wǎng)段連線訪問,拒絕cdd從10.這個(gè)網(wǎng)段連線訪問。
/etc/ftpaccess:是非常重要的一個(gè)配置文件,用來控制存取權(quán)限,文件中的每一行定義一個(gè)屬性,并對(duì)屬性的值進(jìn)行設(shè)置。下面對(duì)它的一些常用配置做一點(diǎn)介紹:
1、定義用戶類別
格式:class [類名] [real/guest/anonymous][IP地址]
功能:這個(gè)指令的功能設(shè)定FTP服務(wù)器上用戶的類別。并可對(duì)客戶端的IP地址進(jìn)行限制,允許特定或者全部的IP地址訪問FTP服務(wù)器。
2、登錄重試次數(shù)
在命令行中輸入:loginfails 10,這表明如果10次還沒有登錄成功就切斷連線。
3、密碼檢查
格式:passwd-check 〈strictness〉 warn
是對(duì)匿名用戶的密碼使用方式的檢查,其中〈strictness〉是三個(gè)可能的字符串之一:None、Trivial、RFC822。若選None,表示將不對(duì)口令做任何檢查;若選Trivial,表示對(duì)口令有一定的要求,它需要在口令中至少要有一個(gè)@符號(hào);若選RFC822,則表示最嚴(yán)格,要求E-mail地址必須遵守RFC822報(bào)文標(biāo)題標(biāo)準(zhǔn)(如:czc@domain.com )。
例如:passwd-check rfc822 warn,表明密碼的要求很嚴(yán)格,當(dāng)密碼不符合規(guī)定時(shí)出現(xiàn)警告信息。
4、登錄人數(shù)的限制
格式:limit [類別] [人數(shù)] [時(shí)間] [文件名]
設(shè)置指定類別在約定時(shí)間內(nèi)可以登錄FTP的人數(shù)。例如:limit remote Any/etc/many.msg,說明類別Remote類別在任何時(shí)間內(nèi)登錄人數(shù)不超過20個(gè)人,否則會(huì)顯示Many.msg警告信息。
合理運(yùn)用這些配置,可以有效地保護(hù)好我們的服務(wù)器。
驗(yàn)證
安裝、配置好FTP服務(wù)器后,就可以進(jìn)行驗(yàn)證,用圖形工具和命令行均可訪問FTP服務(wù)器。在Linux里最常用的命令為FTP,它提供了一個(gè)并不復(fù)雜的FTP服務(wù)器接口。與FTP服務(wù)器連接,只需要在命令提示符后輸入:FTP Servername,用主機(jī)名或希望連接的FTP服務(wù)器的IP地址代替Servername,按照提示輸入用戶名和口令,然后用標(biāo)準(zhǔn)的Linux上移或下移FTP服務(wù)器目錄結(jié)構(gòu)。另外,也可以采用圖形化FTP程序,包括窗口式gFTP,可以借助Web瀏覽器去訪問FTP服務(wù)器。