周雄慶
摘 要: 利用VMware Workstation虛擬機創(chuàng)建了FTP服務(wù)器仿真實驗平臺,在一臺安裝了vsftpd服務(wù)器軟件的Linux網(wǎng)絡(luò)操作系統(tǒng)作為FTP服務(wù)器,另一臺安裝了Windows XP的操作系統(tǒng)作為客戶端,實現(xiàn)了以匿名用戶和本地用戶的方式對FTP服務(wù)器進行訪問。
關(guān)鍵詞: vsftpd; FTP服務(wù)器; VMware
中圖分類號: TP 368.5,TP 302 文獻標志碼: A 文章編號: 1671-2153(2017)06-0094-03
0 引 言
FTP(File Transfer Protocol)是文件傳輸協(xié)議的簡稱,位于TPC/IP模型的應(yīng)用層。FTP協(xié)議定義了一個在遠程計算機系統(tǒng)和本地計算機系統(tǒng)之間傳輸文件的一個標準,能夠工作在Windows,Linux及UNIX等操作系統(tǒng)中實現(xiàn)跨平臺的文件傳輸服務(wù)。
vsftpd(very secure FTP daemon)是一個基于GPL發(fā)布的、Red Hat Linux默認使用的FTP服務(wù)器軟件,其中的vs是very secure的縮寫,由此名稱縮寫可以看出,本服務(wù)器的初衷就是服務(wù)器的安全性。vsftpd可以同時允許匿名用戶(anonymous)與本地用戶(local)訪問。
本文描述了在 Linux 中使用 vsftpd服務(wù)器軟件,實現(xiàn)一個安全、高速、穩(wěn)定的FTP服務(wù)器的方法。
1 實驗平臺的搭建
由于實驗條件的限制,本文所討論的問題是在一臺裝有Windows7的物理計算機上利用VMware Workstation虛擬機軟件進行FTP服務(wù)器安全傳輸文件的設(shè)計與實現(xiàn),首先,在虛擬機中安裝一臺具有CentOS網(wǎng)絡(luò)操作系統(tǒng)的虛擬機,命名為“FTPServer”,作為FTP服務(wù)器;再安裝一臺具有Windows XP操作系統(tǒng)的虛擬機,命名為“Client”,作為FTP客戶端,供測試使用。
在VMware Workstation中設(shè)置兩臺虛擬機的“網(wǎng)卡連接方式”為“內(nèi)部網(wǎng)絡(luò)”,并給FTP服務(wù)器設(shè)置網(wǎng)絡(luò)參數(shù)為
IP地址:192.168.1.100;
子網(wǎng)掩碼:255.255.255.0;
默認網(wǎng)關(guān):192.168.1.1。
給FTP客戶端設(shè)置一個與服務(wù)器相同網(wǎng)段的IP地址為192.168.1.2,子網(wǎng)掩碼和默認網(wǎng)關(guān)與FTP服務(wù)器相同。
在FTP服務(wù)器上安裝vsftpd服務(wù)器軟件,同時編輯相應(yīng)的配置文件,并對vsftpd服務(wù)進行管理,使之功能生效;在FTP客戶端打開資源管理器輸入FTP網(wǎng)址后,通過匿名或本地用戶成功打開文件頁面,實現(xiàn)了一個安全、可靠的文件傳輸。
2 vsftpd服務(wù)的安裝與管理
2.1 vsftpd服務(wù)的安裝
默認情況下,在安裝CENTOS系統(tǒng)時不會自動安裝FTP服務(wù)器。vsftpd服務(wù)器軟件的安裝其實很簡單,只要安裝一個RPM軟件包就可以了。為了確認系統(tǒng)中是否已經(jīng)安裝了vsftpd軟件包,一般使用下面的命令進行檢查:
[root@localhostnamed]#rpm -qa|grep vsftpd
回車之后出現(xiàn)以下內(nèi)容,則表明系統(tǒng)已成功安裝了vsftpd軟件包。
vsftpd-2.2.2-6.el6_0.1.x86_64
如果沒有顯示以上內(nèi)容,則說明系統(tǒng)沒有安裝vsftpd服務(wù),可以通過yum方式進行安裝。
首先,通過mount /dev/cdrom /media命令將centos系統(tǒng)鏡像文件掛載到CENTOS系統(tǒng)中的media目錄中,然后進入/etc/yum.repo.d目錄,使用rm *.*命令刪除其他3個文件,只保留CentO_Media.repo作為模板,并對CentO_Media.repo文件進行編輯,主要是修改3個參數(shù):
baseurl=file:///media/ //指向media目錄
gpgcheck=1 //打開校驗功能
enabled=1 //激活
最后,輸入安裝命令yum –y install vsftpd進行vsftpd軟件包的安裝。
2.2 vsftpd服務(wù)的管理
在centos系統(tǒng)中,當vsftpd軟件包安裝完成后, 還要以獨立方式啟動vsftpd服務(wù)。在命令模式下使用下列命令管理vsftpd服務(wù):
[root@localhostnamed]#service vsftpd start //啟動vsftpd服務(wù)
[root@localhostnamed]#service vsftpd stop //停止vsftpd服務(wù)
[root@localhostnamed]#service vsftpd restart //重新啟動vsftpd服務(wù)
[root@localhostnamed]#service vsftpd status //查看vsftpd服務(wù)狀態(tài)
[root@localhostnamed]# chkconfig vsftpd on //開機自動啟動vsftpd服務(wù)
3 配置FTP服務(wù)器
3.1 配置匿名帳號FTP服務(wù)器
通常FTP主機為公用的服務(wù),主機默認配置使用匿名登錄,也就是說在/etc/vsftpd/vsftpd.conf文件中的anonymous_enable參數(shù)值為“YES”,說明可以允許用戶匿名訪問ftp服務(wù)器。但是只能以只讀的方式訪問,不能進行刪除、創(chuàng)建、上傳等,如果需要匿名用戶具有這些權(quán)限的話,需要更改目錄路徑,并進行相關(guān)參數(shù)設(shè)置如下:
(1) 在根目錄下使用mkdir命令目錄創(chuàng)建111目錄,然后使用cd命令進入111目錄后,再使用mkdir命令目錄創(chuàng)建jsyz目錄,并使用chmod目錄開啟jsyz目錄的所有權(quán)限。具體目錄如下:
[root@localhostnamed]#mkdir /111
[root@localhostnamed]#cd 111
[root@localhostnamed]#mkdir jsyz
[root@localhostnamed]#chmod 777 jsyz
(2) 修改vsftpd的主配置文件,常用的參數(shù)如下:
anonymous_enable=YES //支持匿名用戶賬號訪問
anon_mkdir_write_enabel=YES //允許匿名用戶創(chuàng)建目錄
anon_other_write_enabel=YES //允許匿名用戶的其他寫權(quán)限
anon_upload_enabel=YES //允許匿名用戶上傳
anon_root=/111 //指向111目錄
3.2 配置本地帳號FTP服務(wù)器
(1) 在目錄/home/wwwroot/ftpuser下創(chuàng)建用戶ftpuser
命令:useradd -g root -M -d /home/wwwroot/ftpuser -s /sbin/nologin ftpuser
(2) 設(shè)置用戶ftpuser密碼
命令:passwd ftpuser
# ftpuser為剛剛設(shè)定的用戶名,根據(jù)提示輸入兩次相同的密碼。
(3) 配置文件/etc/vsftpd/vsftpd.conf
anonymous_enable=NO //不允許匿名訪問,禁用匿名登錄 chroot_local_user=YES //禁止本地用戶登出自己的FTP主目錄
chroot_list_enable=YES //不允許FTP用戶離開自己主目錄
chroot_list_file=/etc/vsftpd/chroot_list //鎖定登錄用戶只能家目錄的位置
local_enable=YES //允許使用本地帳戶進行FTP用戶登錄驗證
idle_session_timeout=600 //會話超時
async_abor_enable=YES//支持異步傳輸功能
ascii_upload_enable=YES //支持ASCII模式的下載功能
ascii_download_enable=YES //支持ASCII模式的上傳功能
4 測試vsftpd服務(wù)
以下兩個操作需在測試前完成,如果沒有配置則無法正常登陸到FTP服務(wù)器。
第一個是關(guān)閉SELINUX保護。用vim /etc/sysconfig/selinux命令打開文件,把參數(shù)SELINUX的值enforcing改為disabled即可。
第二個是配置防火墻。vsftpd軟件安裝完成后,默認端口是21,需要通過vim /etc/sysconfig/iptables命令在防火墻配置中開啟21端口才可以對外連接。
-A INPUT-m state-state NEW-m tcp-p tcp-dport 21-j ACCEPT
-A OUTPUT-m state-state NEW-m tcp-p tcp-dport 21-j ACCEPT
配置完防火墻,必須使用service iptables restart命令重啟防火墻才能生效。
完成上面兩個配置之后,就可以啟動vsftpd服務(wù),在客戶端使用ftp命令登陸FTP服務(wù)器192.168.1.100,以檢測是否能夠正常工作。輸入用戶名“ftpuser”和密碼“ftpuser”后,能打開相應(yīng)的文件夾,如圖1所示。
5 結(jié)束語
本文通過在VMwareWorkstation虛擬機軟件上安裝兩臺虛擬機,一臺具有CentOS網(wǎng)絡(luò)操作系統(tǒng)的虛擬機,命名為“FTPServer”,作為FTP服務(wù)器;再安裝一臺具有WindowsXP操作系統(tǒng)的虛擬機,命名為“Client”,作為FTP客戶端,供測試使用,構(gòu)建了一個FTP服務(wù)器安全站點實驗環(huán)境,實現(xiàn)了安全的文件傳輸服務(wù)器的設(shè)計。
參考文獻:
[1] 丁傳煒.基于VirtualBox虛擬機的VSFTP服務(wù)仿真實驗平臺的設(shè)計[J]. 計算機時代,2013(2):9-10.
[2] 張玉琴. FTP服務(wù)器配置與管理[J]. 數(shù)字技術(shù)與應(yīng)用,2017(4):53.
[3] 周伯恒. CentOS6.X系統(tǒng)管理實戰(zhàn)寶典[M]. 北京:清華大學(xué)出版社,2013:77-79.
[4] 張敬東. Linux服務(wù)器配置與管理[M]. 北京:清華大學(xué)出版社,2014:313.
[5] 張同光. Linux操作系統(tǒng)[M]. 北京:清華大學(xué)出版社,2016:358.