Ubuntu下vsftp的配置
1,VsFTPd的簡(jiǎn)述:
VSFTP(Very Secure FTP Daemon,非常安全的FTP服務(wù)器)。顧名思義,VSFTPD設(shè)計(jì)的出發(fā)點(diǎn)就是安全性。同時(shí)隨著版本的不斷升級(jí),VSFTPD在性能和穩(wěn)定性上也取得了極大的進(jìn)展。除了安全和性能方面很優(yōu)秀的外,還有很好的易用性。Red Hat公司在自己的FTP服務(wù)器(ftp.redhat.com)上就使用了vsFTPd 。
2,部署VSFTP
本文以u(píng)buntu9.10為例進(jìn)行部署,其他Linux發(fā)行版本類似。
2.1 安裝
$ sudo apt-get install vsftpd
2.2 配置
需要配置文件/etc/vsftpd.conf 來進(jìn)行設(shè)置參數(shù)以對(duì)FTP進(jìn)行控制,包括訪問權(quán)限,流量等進(jìn)行控制。
執(zhí)行sudo vi /etc/vsftpd.conf (或sudo gedit /etc/vsftpd.conf )可以看到配置文件中的默認(rèn)參數(shù),其中加#為注釋。提參數(shù)意義如下所示:
1>常用參數(shù)意義,是具體情況配置
#anonymous_enable 是否允許匿名ftp,如否則選擇NO,默認(rèn)允許匿名訪問,注意當(dāng)允許是所有用戶均視為匿名登錄。
#local_enable 是否允許本地用戶訪問,是指VSFTP所在機(jī)器上的注冊(cè)用戶。
#local_umask=022 默認(rèn)的umask碼
#write_enable 是否允許本地用戶修改和刪除
#local_umask=022 FTP上傳文件權(quán)限 ,默認(rèn)是077
#anon_upload_enable=YES 是否允許匿名用戶上傳
#anon_mkdir_write_enable=YES 是否允許匿名用戶的寫和創(chuàng)建目錄的權(quán)限
#dirmessage_enable=YES 當(dāng)切換目錄時(shí),是否顯示該目錄下message隱藏文件的內(nèi)容
#xferlog_enable=YES 是否激活上傳和下載的日志
#connect_from_port_20=YES 是否啟動(dòng)FTP數(shù)據(jù)端口20的連接請(qǐng)求
#chown_uploads=YES 是否改變上傳文件的所有者
#chown_username=whoever 改變上傳文件的所有著為whoever
#xferlog_file=/var/log/vsftpd.log 上傳/下載日志文件所默認(rèn)的路徑
#xferlog_std_format=YES 是否使用標(biāo)準(zhǔn)的ftpd xferlog日志格式
#idle_session_timeout=600 是否將在用戶會(huì)話空閑10分鐘后被中斷
#data_connection_timeout=120 是否將在數(shù)據(jù)連接空閑2分鐘后被中斷
#nopriv_user=ftpsecure 是否運(yùn)行vsftpd需要的非特殊系統(tǒng)用戶默認(rèn)nobody
#async_abor_enable=YES 是否是否允許運(yùn)行特殊的FTP命令async
#ascii_upload_enable=YES 是否啟用上傳的ascii傳輸方式
#ascii_download_enable=YES 是否啟用下載的ascii傳輸方式
#ftpd_banner=Welcome to blah FTP service. 用戶連接服務(wù)器后顯示信息
#deny_email_enable=YES 是否允許某些匿名用戶使用郵件地址(默認(rèn)的)
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list #指出被鎖定在自家目錄中的用戶的列表文件。文件格式為一行一用戶。
注意:當(dāng)chroot_local_user=NO、chroot_list_enable=YES時(shí),vsftpd.chroot_list中用戶為鎖定用戶,即他們除了自己的目錄,不可以訪問其他目錄。
當(dāng)chroot_local_user=YES、chroot_list_enable=YES時(shí),vsftpd.chroot_list中用戶為非鎖定用戶,他們可以訪問任何其他目錄。
local_root=/var/www/web (路徑自定義)#定義所有本地用戶的根目錄。當(dāng)本地用戶登入時(shí),將被更換到此目錄下。(注釋則訪問該用戶自己目錄)
write_enable=YES
max_clients=100 #FTP服務(wù)器最大承載用戶
max_per_ip=5 #限制每個(gè)IP的進(jìn)程
local_max_rate=256000 #最大傳輸速率(b/s)
hide_ids=YES #是否隱藏文件的所有者和組信息
idle_session_timeout= 3000 #空閑(發(fā)呆)用戶會(huì)話的超時(shí)時(shí)間,若是超出這時(shí)間沒有數(shù)據(jù)的傳送或是指令的輸入,則會(huì)強(qiáng)迫斷線。單位為秒,默認(rèn)值為300。
2>配置vsftpd.chroot_list
增加需要鎖定/非鎖定目錄的用戶(根據(jù)自己情況添加)
3>刪除vsftp默認(rèn)訪問路徑
$ sudo rmdir /home/ftp 根據(jù)local_root定義的目錄,新建一個(gè),以控制登陸用戶進(jìn)入此目錄
4>重啟vsftp服務(wù)
$ /etc/init.d/vsftpd restart
注意一點(diǎn),在設(shè)置用戶對(duì)文件的訪問權(quán)限時(shí),注意如果要是登陸用戶有上傳的權(quán)限,則不僅要進(jìn)行上述配置文件參數(shù)的設(shè)置,同時(shí)還要保證用戶對(duì)進(jìn)入的目錄有寫的權(quán)利,一般可設(shè)為755,這就意味這可以通過對(duì)本地用戶本身的權(quán)限和FTP所配置的權(quán)限結(jié)合進(jìn)行有效的訪問控制。
現(xiàn)在你就可以試試在Linux上部署一個(gè)FTP服務(wù)器了,如果還有不明之處可以參考介紹Linux的書籍,一般的linux都會(huì)介紹FTP的部署。當(dāng)然也可以留言,呵呵,謝謝!
【編輯推薦】