朱桂琴 中國石油化工股份有限公司江蘇南通石油分公司信息中心
Linux系統下實現高效安全的FTP服務器
朱桂琴 中國石油化工股份有限公司江蘇南通石油分公司信息中心
本文闡述了Linux操作系統下ProFTP服務器的建立、配置和安全管理機制,通過實例闡述了它如何安全實現石油公司內部、公司與分公司之間的管理過程。
Linux;ProFTP;安全
隨著計算機技術和網絡技術的不斷發展,它已經成為企業辦公自動化的重要手段。公司內部、總公司與分公司,分公司與子公司之間的聯系非常緊密,給文件的傳輸帶來很大的便利,同時給用戶提供了重要數據的備份空間。那么如何提高企業內部安全的信息傳輸,提高辦公效率成為研究的重點。
使用PROFTP軟件在Linux下構建安全的FTP服務器,利用FTP服務拓展日常管理內容,比如下發材料、軟件、通知;上報材料、常用軟件等,而且文件大小只受服務器空間限制,可以傳輸比較大的文件。利用FTP服務創建三類用戶:管理員、部門級用戶和普通用戶。管理員具有創建和管理所需要的各類文件;部門級用戶具有選取文件夾,對自己指定文件具有上傳或下載等功能,普通用戶僅局限于個人指定文件上傳和查詢功能。FTP服務系統除了能嚴格規定管理員和普通用戶的不同處理級別外,還要區分不同用戶的工作環境,以便管理員在執行任務時彼此不會相互干擾。例如,部門級用戶僅對自己部門成員有自己專門的工作目錄區,在此區中部門用戶建立的文件和文件夾以該部門用戶為所有者,因此,這些文件或文件夾的控制權也全部歸此部門用戶所擁有,而別的用戶無權介入。
用戶利用FTP服務系統進行文件上傳和下載時,系統應保證多用戶的并行處理速度和安全。對用戶文件夾的處理還有一些特殊的規定,比如對已經上傳的文件不允許被刪除和改名;為防止有些用戶任意下載其他用戶的文件,應該規定一旦上傳就不能下載,但同時還要保證用戶可以看到已上傳到服務器的文件的文件名。
Linux操作系統中常見的性能優良的的FTP服務軟件是Proftpd。該軟件的最大特點是它具有很強的安全性和可靠性,而且配置方法簡單易學。可以對訪問的各級目錄逐個地設置不同的訪問權限,而且權限功能分類細致;對不同形式的客戶要求,容易建立準確的訪問權限標準。
首先獲取P r o f t p d的安裝軟件。Proftpd的安裝軟件是共享軟件,在網絡的相關Linux網站中都可以找到其各種版本,并由下載而獲得。例如Proftpd的版本可以從www.proftpd.net中下載。在此,我們以Proftpd1.2.8版本為例,介紹它的安裝過程。
從網上下載的Proftpd安裝軟件的文件格式一般為Proftpd-1.2.8.tar.gz,假設此安裝軟件被存放在Linux服務器的/usr目錄下,下面開始進行解包安裝:#tar vfxz proftpd-1.2.8.tar.gz /*系統自動創建/usr/proftpd-1.2.8目錄,并將文件解壓在此目錄下。#cd proftpd-1.2.8設定安裝到/www/proftpd目錄中。#./ configure --prefix=/www/proftpd /*檢測要安裝的文件,并對系統進行配置。#make /*編譯文件。#make install /*安裝編譯成功的文件。
到目前為止,我們已經完成了Proftpd的編譯和安裝。幾個文件的功能及路徑說明:/www/proftpd/sbin/ proftpd 執行程序
/www/proftpd/etc/proftpd.conf 設置文件
/www/proftpd/var/proftpd.pid proftpd.pid做為一個服務的ID號
并且在/www/proftpd/etc目錄下有了一個默認的Proftpd配置文件proftpd.conf。系統還自動建立一個FTP用戶帳號和FTP用戶組,同時創建與FTP服務相關的子目錄,在本文中設定由系統建立了一個名為/www/proftpd/ftp的子目錄,并將此作為請求FTP服務登錄的根目錄。
設定proftpd.conf文件,起動服務,在默認的"/www/proftpd/etc/proftpd.conf/"文件中有一行文字"ServerType standalone",指定"/www/proftpd/sbin/ proftpd"以一個服務的方式來工作,可以放"/www/proftpd/sbin/proftpd"到 "/ etc/rc.d/rc.local"文件中,以便開機起動。放到inetd.conf中起動,也可以改變"ServerType standalone"為"ServerType
inetd",并修改"/etc/inetd.conf"中的ftp stream tcp nowait root /usr/ sbin/in.ftpd in.ftpd為ftp stream tcp nowait root /www/proftpd/sbin/ proftpd proftpd。注意做為服務器設定可以直接執行/www/proftpd/sbin/ proftpd來起動服務。如果放在inetd.conf文件中,就是修改完后 killall -HUP inetd
1)#服務器的名稱
ServerName "ProFTPD Default Installation"
2)#服務器的服務方法(系統服務/ inetd連接) ServerType standalone/ inetd
ServerType standalone
3)#默認服務
DefaultServer on
4)#服務器使用的port號碼
Port 21
5)#proftpd在做為服務時的用戶名和組名
User nobody
Group ftp
6)#根目錄設定,可以用/home也可用~,可以使用戶不能向上到根目錄下
DefaultRoot ~
7)#目錄的權力


9)#注意最好加上以下這一行

設置完成,客戶端用匿名登陸成功。以上就是F T P匿名登陸的設置。
2.4 創建企業部門帳號及建立部門工作目錄
FTP服務可以為兩種對象進行服務,一類是真是用戶,即是Linux系統下由帳號的用戶,另一類是匿名用戶。在本設置中,我們將部門級用戶定為真實用戶,建立兩個部門帳號財務科和辦公室,如cw、bgs,并將其加入到FTP組中。操作如下:
#useradd –g ftp cw
#useradd –g ftp bgs
在/www/proftpd/ftp子目錄下為每個部門建立自己的工作目錄,例如,用財務科的用戶名cw作為工作目錄名,并為該部門建立兩個目錄——存放財務報表數據的目錄data、上報材料的工作目錄work。下面以財務科cw為例,建立它的工作目錄。
#cd /www/proftpd /ftp
#mkdir –p cw/data cw/work
#chown cw: ftp cw/data cw/ work
執行chown命令的目的是將data和work兩個文件夾的所有者改為財務資產科這個部門。配置文件完成后,在proftpd.conf文件中加入如下兩行:
UseReverseDNS off
IdentLookups off
提高客戶端的登錄速度非常明顯。
2.5 設置用戶組權限及添加用戶 如:
1)、為財務科部門用戶級cw的組擁有者增加讀寫權:
chmod g+rw cw
2)、為cw目錄文件的擁有者去除x權:
chmod u-x cw
3)、指定目錄文件cw的其他用戶權限為rw-:
chmod o=rw- cw
4)、為目錄文件cw的全體用戶增加x權:
chmod a+x cw
5)、增加普通個人用戶
useradd –d /www/proftpd / ftp 用戶名
所有用戶設置完成后,如果財務科希望使用多個文件夾來存放不同的資料,并向下級用戶開放,財務部門級用戶可以從Windows環境的客戶機上申請Linux的FTP服務,并以合法用戶身份登錄,自動進入自己的工作目錄,打開data文件夾,在此創建自己所需的子文件夾,并存入相關的文件。還可以在自己的work目錄下建立多個下級部門(即按地級分類子部門)為子文件夾。例如,從WindowsXP環境的客戶機上申請Linux的FTP服務,以合法用戶身份登錄,自動進入自己的工作目錄后,打開work文件夾,在此創建各子公司對應的子文件夾,同時修改文件夾屬性,將其中的group權限的寫狀態激活即可。如果要臨時禁用某個子文件夾,則將此文件夾屬性的group權限的寫狀態取消。
1)如果服務器提供匿名FTP服務,則服務器最好不要同時提供WWW服務的功能,否則,有可能會導致入侵者在匿名FTP空間下放一個文件,而用HTTP服務器執行,從而留下很大的安全隱患。
2)注意下面幾個文件的配置,它們和安全性密切相關:ftpusers, ftpgroups,ftphosts等
3)保護系統。建議對如下一些目錄作如下設定:
~ftp 這個目錄設為是超級用戶所有,其他任何人都不能寫。
~ftp/bin 這個目錄設為是超級用戶所有,其他任何人都不能寫。其中ls程序設為111。
~ftp/etc 這個目錄設為是超級用戶所有,其他任何人都不能寫。其中passwd和group文件設為444且為超級用戶所有。
~ftp/pub 如果允許普通用戶上載文件,則最好在~ftp/pub下建立一個子目錄,并設權限為777或733。
4)檢測和記錄
用ftpwho查看當前每個ftp用戶的進程信息。
用ftpcount命令查看當前每個組的用戶個數。
最后,詳細記載ftp登錄,備份以防不測。
5)文件傳輸中使用加密技術,提高安全性。
Proftpd服務系統的工作狀態很穩定,但是要更細致和完善地建立好FTP服務,還需要更深入和全面地了解Proftpd的配置命令和相關參數。對上述建立的爭對有上下級關系的企業輔助系統的FTP服務,會隨著用戶的不同應用要求,不斷地得到進一步的補充和完善。例如,為保證安全,應該對匿名用戶上傳的文件大小做一個限定(可以加入MaxStoreFileSize8000Kb user anonymous一行,限制上傳文件不可大于8 M B),以免有人惡意的上傳一個特大文件,企業內部使用最好禁止匿名上傳。
[1] 羅曉東.在局域網中組建Web和FTP服務器[J].信息技術教育 .2004,(04)
[2] 邢莉娟.FTP服務器的安全問題[J].內蒙古統計.2003,(03)
[3] 馬林山, 丁健.圖書館FTP服務器的配置與維護[J].合肥聯合大學學報.2002,(04)
[4] 肖曉梅.Serv-U FTP在教學中的應用研究[J].中國教育信息化.2008,(12)
[5] 羅海波.多媒體網絡中FTP服務器安全解決方法[J].柳州職業技術學院學報.2005,(03)
[6] 戴紅.網絡型嵌入Linux系統的無差錯多播傳輸研究[J].吉林工程技術師范學院學報.2004,(09)
10.3969/j.issn.1001-8972.2010.11.047