傅令杰
摘 要
計算機之間需要上傳和下載文件,F(xiàn)TP則是其中非常優(yōu)秀的一個協(xié)議。剛剛過了RedHat的RHCE,本著趁熱打鐵的精神,寫下一篇關(guān)于如何簡單配置FTP的文章。這篇文章面對非專業(yè)的Linux使用者,從零開始幫助大家一點一點配置好FTP的基本功能,能夠讓別的機器訪問自己,并上傳下載文件。
【關(guān)鍵詞】Linux RedHat vsftpd selinux
1 安裝配置Linux環(huán)境
在正式開始交大家如何安裝和配置FTP之前,先幫助大家搭建好自己的運行環(huán)境。因為是開源的操作系統(tǒng),現(xiàn)在市面上流行的Linux發(fā)行版非常之多,像大家熟悉的Ubuntu,debian,fedora,Centos,rhel都是非常優(yōu)秀的發(fā)行版。對于面向server而言,個人比較推薦大家選擇rhel或者centos,后者是rhel的社區(qū)再編譯版,可謂同宗同源。這里筆者選擇rhel6.5作為這篇文章的默認(rèn)運行環(huán)境了。首先大家從網(wǎng)上下載下來鏡像,一般是***.Iso。可以選擇在Windows下的虛擬機VMware workstation進行安裝,當(dāng)然,如果是有系統(tǒng)潔癖的朋友,完全可以用poweriso配合U盤制作自己的雙系統(tǒng)。Linux里的grub會自行接管開機的引導(dǎo),讀者可以在開機時自由的選擇想要使用的操作系統(tǒng)。
現(xiàn)在假定已經(jīng)順利的進入了自己安裝好的rhel6.5了。由于紅帽公司的官方源是需要購買的,為了能夠安裝我們的vsftp,我們需要自己配置本地yum源。Linux下有一句非常著名的話,叫做“一切皆文件”,在Linux下,無論是設(shè)備也好,服務(wù)也好,都可以抽象成文件來進行配置。配置yum源和FTP其實也是對文件的改動。
首先大家以root身份登錄系統(tǒng),打開終端,用cd命令進入/etc/yum.repo.d/目錄,使用rm–fr*刪除掉里面原先的源。vim yum.repo創(chuàng)建新的文件。注意這里的.repo必須要有,這是系統(tǒng)尋找yum源文件所必須的后綴,至于點前面的名字,可以任意取名。進入文件后可以這樣寫(筆者的每一個空格代表空一行):[Server] name=localserverbaseurl=file:///yum gpgcheck=0然后wq退出保存。回到/目錄,用mkdir創(chuàng)建目錄yum。這是請?zhí)貏e注意,如果是虛擬機的話,直接使用命令mount /dev/sr0 /yum掛載ISO虛擬設(shè)備到/yum目錄就行,然后在/etc/fstab/下寫入/etc/sr0 /yum iso9660 defaults 0 0 這樣一來就能永久的掛載了。如果是裝雙系統(tǒng)的朋友,需要這樣寫mount –o loop [你的iso文件] /yum 然后在/etc/fstab里寫入/etc/sr0 /yum iso9660 loop 0 0。現(xiàn)在一切準(zhǔn)備妥當(dāng),鍵入yum clean all 再yum list 看到一大堆的軟件,那么就說明你的本地yum源配置好了。準(zhǔn)備工作現(xiàn)在已經(jīng)告一段落了。
2 安裝FTP以及配置文件內(nèi)容
以root身份打開終端,輸入yum install vsftpd –y,這個時候系統(tǒng)會自行從剛剛配置好的yum源里找到FTP的安裝包及相關(guān)的依賴關(guān)系。等安裝好后,我們需要開機啟動vsftpd。使用chkconfigvsftpd on,再使用chkconfigvsftpd–list,如果看到2345是on,則說明機器開機就自動啟動FTP服務(wù)了。進入/etc/vsftpd/vsftpd.conf,這是FTP的主配置文件。值得一提的是,Linux的配置文件中,開頭帶有#的,指的是注釋內(nèi)容,意思是并不生效的意思。將文件中第27行的#去掉,并在第28行加入anon_write_readable_only=NO。這樣就可以允許上傳和下載文件了。如果實在記不住這個麻煩的命令,完全可以另開一個終端,利用幫助文檔man 5 vsftpd來找到相應(yīng)的命令。事實上Linux下,很多文件的配置信息都是在其強大的幫助文檔里詳細(xì)記載的。
3 更改目錄權(quán)限
這個時候讀者/etc/init.d/vsftpd restart,并且安裝了lftp工具后,會發(fā)現(xiàn)沒有辦法看到自己FTP默認(rèn)發(fā)布目錄,也就是/var/ftp/pub/里的內(nèi)容,也沒有辦法上傳和下載文件。這個時候就需要對權(quán)限進行調(diào)整了。進入到/var/ftp/,使用命令chmod775 pub 來使ftp組的用戶具有寫的權(quán)限,同時使用chcon ftp pub 來改變pub的所屬組。關(guān)于Linux中權(quán)限的有關(guān)知識,一篇文章恐怕很難給讀者說清楚,希望讀者成功配置完ftp后,自行學(xué)習(xí),不但要知其然還要知其所以然。
4 更改相應(yīng)的SELinux
這個時候還需要最后一步,就是對SELinux的更改。用ls –Z命令可以查看SELinux的屬性,可以看到,pub目錄的安全上下文是public_content_t這顯然是不行的,需要使用命令chcon–t public_content_rw_t更改安全上下文。同時使用getsebool–a | grep ftp看FTP的sebool值,使用setsebool–P allow_ftpd_anon_write更改。此時/etc/init.d/vsftpd restart來重新啟動FTP,使用別的機器lftp[主機ip],就可以訪問你的默認(rèn)發(fā)布目錄了,即就是/var/ftp/pub/內(nèi)的所有文件,同時也可以自由的在默認(rèn)發(fā)布目錄里對文件進行讀和寫的操作。這就是FTP實現(xiàn)外部訪問和讀寫的簡單配置。
參考文獻
[1]鳥哥.鳥哥的Linux私房菜服務(wù)器架設(shè)篇[M].北京:人民郵電出版社,2012(06).
指導(dǎo)老師
韓立凱教授、王光教授。
作者單位
西安文理學(xué)院 陜西省西安市 710000endprint