首先進行安裝:
#apt-get install vsftpd
下面是vsftpd的配置文件:
/etc/vsftpd/vsftpd.conf 主配置文件
/usr/sbin/vsftpd Vsftpd的主程序
/etc/rc.d/init.d/vsftpd 啓動腳本
/etc/pam.d/vsftpd PAM認證文件(此文件中file=/etc/vsftpd/ftpusers字段,指明阻止訪問的用戶來自/etc/vsftpd/ftpusers文件中的用戶)
/etc/vsftpd/ftpusers 禁止使用vsftpd的用戶列表文件。記錄不允許訪問FTP服務器的用戶名單,管理員可以把一些對系統安全有威脅的用戶賬號記錄在此文件中,以免用戶從FTP登錄後獲得大於上傳下載操作的權利,而對系統造成損壞。(注意:linux-4中此文件在/etc/目錄下)
/etc/vsftpd/user_list 禁止或允許使用vsftpd的用戶列表文件。這個文件中指定的用戶缺省情況(即在/etc/vsftpd/vsftpd.conf中設置userlist_deny=YES)下也不能訪問FTP服務器,在設置了userlist_deny=NO時,僅允許user_list中指定的用戶訪問FTP服務器。(注意:linux-4中此文件在/etc/目 錄下)
/var/ftp 匿名用戶主目錄;本地用戶主目錄爲:/home/用戶主目錄,即登錄後進入自己家目錄
/var/ftp/pub 匿名用戶的下載目錄,此目錄需賦權根chmod 1777 pub(1爲特殊權限,使上載後無法刪除)
/etc/logrotate.d/vsftpd.log Vsftpd的日誌文件
接下來需要進行簡單的配置/etc/vsftpd.conf:
#vi /etc/vsftpd.conf
瞭解一下常用的選項:
listen=YES:這個表示是否監聽端口,我們就是要架設FTP服務器,當然YES啦!
anonymous_enable=NO:這個標識是否啓用匿名用戶,一般我們自己的服務器肯定都是不允許匿名登錄的,那樣多危險啊!所以這裏保持NO。當然如果您需要啓動匿名用戶,別忘記這裏改爲YES。
local_enable=YES:這個表示是否允許本地用戶登錄。我們當然需要讓本地用戶登錄啦,因爲他們都是有用戶名和密碼的。這樣就不用去額外添加FTP賬號了,直接創建Linux用戶即可。
write_enable=YES:是否允許寫入數據。這個如果爲YES,那麼用戶就可以進行上傳文件、修改文件、刪除文件等操作;否則就全部只能看到文件、下載文件,但是不允許執行修改、刪除、上傳的操作。
local_umask=077:這是將文件上傳之後,文件的權限,默認爲077。除非有特殊需要,建議保持不變。
anon_upload_enable=YES:這是是否啓用匿名用戶的上傳權限。如果您希望匿名用戶也能上傳文件的話,啓用這項即可。
anon_mkdir_write_enable=YES:同樣是給匿名用戶的權限,是可以創建目錄,寫入、修改、刪除文件的總開關。一般情況下匿名用戶不能使用這樣的權限,會帶來潛在的風險。
dirmessage_enable=YES:用戶進入一個目錄後,是否給出信息提示。默認YES,默認即可。
use_localtime=YES:是否使用服務器本地的時間,保持默認YES即可。
xferlog_enable=YES:是否記錄FTP用戶的操作記錄,爲了方便追溯和安全起見,建議YES。
connect_from_port_20=YES:是否允許從20端口連接,保持YES即可,除非你確定不用這個20端口。
chown_uploads=YES:是否改變上傳文件的歸屬,默認是註釋掉不生效的,如果你需要將上傳的文件權限更改爲某個賬戶,可以選擇YES啓用它。
chown_username=whoever:這項是承接上一個選項的,是改變爲哪個用戶的權限。注意:改變爲root用戶權限是不推薦的!
xferlog_file=/var/log/vsftpd.log:日誌記錄的文件名,保持默認即可。
idle_session_timeout=600:空閒多少時間自動斷開FTP連接,單位是秒。默認值是600秒也就是10分鐘。
data_connection_timeout=120:數據傳輸超時的時間,單位也是秒。是指數據傳輸過程中,多長時間內接收不到數據,就認爲超時,然後斷開連接。
ftpd_banner=Welcome to blah FTP service.這個是連接FTP的時候,服務器給出的歡迎信息。
chroot_local_user=YES:這個選項很重要,他決定了登錄的FTP用戶是否可以“漫遊”到自己目錄以外的目錄,除非特別需要,否則強烈推薦設置爲YES,將用戶鎖定在他們自己的目錄內,避免他們看到或者修改系統文件。
建立共享文件夾 /home/***
在vsftpd.conf中加入
anonymous_enable=YES
anon_root=/home/***
local_enable=YES
local_root=/home/***
基本上上面這些配置完後,vsftpd就算可以正常運作了。這個時候輸入下面的命令讓設置生效:
#/etc/init.d/vsftpd restart
然後如果要創建新的FTP用戶,只需要使用Linux本身的adduser即可。
轉自 http://blog.renhao.org/2010/07/use-vsftpd-to-build-ftp-server-on-ubuntu/