1。安裝web
$ sudo apt-get install vsftpd服務器
2。 配置session
須要配置文件/etc/vsftpd.conf 來進行設置參數以對FTP進行控制,包括訪問權限,流量等進行控制。async
執行sudo vi /etc/vsftpd.conf (或sudo gedit /etc/vsftpd.conf )能夠看到配置文件中的默認參數,其中加#爲註釋。提參數意義以下所示:ide
1>經常使用參數意義,是具體狀況配置rest
#anonymous_enable 是否容許匿名ftp,如不然選擇NO,默認容許匿名訪問,注意當容許是全部用戶均視爲匿名登陸。日誌
#local_enable 是否容許本地用戶訪問,是指VSFTP所在機器上的註冊用戶。orm
#local_umask=022 默認的umask碼進程
#write_enable 是否容許本地用戶修改和刪除ip
#local_umask=022 FTP上傳文件權限 ,默認是077
#anon_upload_enable=YES 是否容許匿名用戶上傳
#anon_mkdir_write_enable=YES 是否容許匿名用戶的寫和建立目錄的權限
#dirmessage_enable=YES 當切換目錄時,是否顯示該目錄下message隱藏文件的內容
#xferlog_enable=YES 是否激活上傳和下載的日誌
#connect_from_port_20=YES 是否啓動FTP數據端口20的鏈接請求
#chown_uploads=YES 是否改變上傳文件的全部者
#chown_username=whoever 改變上傳文件的全部着爲whoever
#xferlog_file=/var/log/vsftpd.log 上傳/下載日誌文件所默認的路徑
#xferlog_std_format=YES 是否使用標準的ftpd xferlog日誌格式
#idle_session_timeout=600 是否將在用戶會話空閒10分鐘後被中斷
#data_connection_timeout=120 是否將在數據鏈接空閒2分鐘後被中斷
#nopriv_user=ftpsecure 是否運行vsftpd須要的非特殊系統用戶默認nobody
#async_abor_enable=YES 是不是否容許運行特殊的FTP命令async
#ascii_upload_enable=YES 是否啓用上傳的ascii傳輸方式
#ascii_download_enable=YES 是否啓用下載的ascii傳輸方式
#ftpd_banner=Welcome to blah FTP service. 用戶鏈接服務器後顯示信息
#deny_email_enable=YES 是否容許某些匿名用戶使用郵件地址(默認的)
chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list #指出被鎖定在自家目錄中的用戶的列表文件。文件格式爲一行一用戶。
注意:當chroot_local_user=NO、chroot_list_enable=YES時,vsftpd.chroot_list中用戶爲鎖定用戶,即他們除了本身的目錄,不能夠訪問其餘目錄。
當chroot_local_user=YES、chroot_list_enable=YES時,vsftpd.chroot_list中用戶爲非鎖定用戶,他們能夠訪問任何其餘目錄。
local_root=/var/www/web (路徑自定義)#定義全部本地用戶的根目錄。當本地用戶登入時,將被更換到此目錄下。(註釋則訪問該用戶本身目錄)
write_enable=YES
max_clients=100 #FTP服務器最大承載用戶
max_per_ip=5 #限制每一個IP的進程
local_max_rate=256000 #最大傳輸速率(b/s)
hide_ids=YES #是否隱藏文件的全部者和組信息
idle_session_timeout= 3000 #空閒(發呆)用戶會話的超時時間,如果超出這時間沒有數據的傳送或是指令的輸入,則會強迫斷線。單位爲秒,默認值爲300。
2>配置vsftpd.chroot_list
增長鬚要鎖定/非鎖定目錄的用戶(根據本身狀況添加)
3>刪除vsftp默認訪問路徑
$ sudo rmdir /home/ftp 根據local_root定義的目錄,新建一個,以控制登錄用戶進入此目錄
4>重啓vsftp服務
$ service vsftpd restart