ubuntu安裝FTP

一、下載安裝:

apt-get install vsftpd


二、配置

1、鎖定用戶在/home/ftp默認目錄活動,
     並保留/etc/vsftpd.chroot_list文件裏面的用戶列表可訪問其他目錄。
2、具備暫時凍結FTP用戶的功能,將需暫停的用戶名加入到/etc/vsftpd.usr_list即可。

設置配置文件:
設置/etc/vsftpd.conf文件內容(參考下邊的內容)
新建兩文件:touch /etc/vsftpd.chroot_list(把下邊新增的FTP用戶添加到該文件中)
                    touch /etc/vsftpd.user_list(若需要凍結FTP用戶,添加用戶名到該文件中)
新建目錄:mkdir /home/ftp
新建羣組:addgroup ftp(默認存在)
修改/home/ftp屬性:chown ftp:ftp /home/ftp

                                   chmod 775 /home/ftp
新增FTP用戶: adduser --shell /bin/false --home /home/ftp your_ftpusr_name
把需要開通FTP的用戶名加入到ftp羣組:usermod -aG ftp your_ftpusr_name
#注意:
#如果你的/etc/shells裏面沒有包含/bin/false,則你用上述的方法建立的用戶將法訪問#FTP,解決方法:編輯/etc/shells,加入/bin/false這行。

/etc/vsftpd.conf文件:
# Example config file /etc/vsftpd.conf 
listen=YES 
#listen_ipv6=YES 
anonymous_enable=YES 
local_enable=YES 
write_enable=YES 
#anon_upload_enable=YES 
#anon_mkdir_write_enable=YES 
dirmessage_enable=YES 
xferlog_enable=YES 
connect_from_port_20=YES 
#chown_uploads=YES 
#chown_username=whoever 
#xferlog_file=/var/log/vsftpd.log 
#xferlog_std_format=YES 
#idle_session_timeout=600 
#data_connection_timeout=120 
#nopriv_user=ftpsecure 
#async_abor_enable=YES 
#ascii_upload_enable=YES 
#ascii_download_enable=YES 
#ftpd_banner=Welcome to blah FTP service. 
#deny_email_enable=YES 
#banned_email_file=/etc/vsftpd.banned_emails 
chroot_local_user=YES 
chroot_list_enable=YES 
chroot_list_file=/etc/vsftpd.chroot_list 
#ls_recurse_enable=YES 
secure_chroot_dir=/var/run/vsftpd 
pam_service_name=vsftpd 
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem 
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key 
anon_root=/home/ftp 
local_root=/home/ftp 
userlist_file=/etc/vsftpd.user_list 
userlist_enable=YES 
userlist_deny=YES


+++++++++++++++++++++++++++++++++++++

常用配置選項說明:
1、listen=YES
若設置爲YES,開啓監聽網絡。

2、anonymous_enable
若設置爲YES,則允許匿名用戶訪問;若設置爲NO則拒絕匿名用戶訪問。
如果開啓的話,則可以通過用戶名ftp或者anonymous來訪問,密碼隨便。

3、local_enable
若設置爲YES,則允許通過本地用戶帳號訪問;若設置爲NO,則拒絕本地用戶帳號訪問。如果你拒絕了陌生人訪問,那麼這個必須設置爲YES吧,否則誰能訪問你的FTP呢?

4、write_enable
若設置爲YES,則開啓FTP全局的寫權限;若設置爲NO,則不開。
若爲NO則所有FTP用戶都無法寫入,包括無法新建、修改、刪除文件、目錄等操作,也就是說用戶都沒辦法上傳文件!!

5、anon_upload_enable 
若設置爲YES,開啓匿名用戶的上傳權限。前提是write_enable有開啓,並且用戶具有對當前目錄的可寫權限。 若設置爲NO,則關閉匿名用戶的上傳權限。

6、anon_mkdir_write_enable 
若設置爲YES,開啓匿名用戶新建目錄的權限。前提是write_enable有開啓,並且用戶具有對當前目錄的可寫權限。 若設置爲NO,則關閉匿名用戶新建目錄的權限。

7、dirmessage_enable 
若設置爲YES,則可開啓目錄信息推送,也就是用戶登錄FTP後可以列出當前目錄底下的文件、目錄。 這個應該要開啓吧!

8、xferlog_enable 
若設置爲YES,則開啓登錄、上傳、下載等事件的日誌功能。應開啓! 

9、xferlog_file=/var/log/vsftpd.log
指定默認的日誌文件,可指定爲其他文件。 

10、xferlog_std_format
若設置爲YES,則啓用標準的ftpd日誌格式。可以不啓用。 

11、connect_from_port_20 
若設置爲YES,則服務器的端口設爲20。
如果不想用端口20,可以另外通過ftp_data_port來指定端口號。

12、chown_uploads
若設置爲YES,則匿名用戶上傳文件後系統將自動修改文件的所有者。
若要開啓,則chown_username=whoever也需指定具體的某個用戶,用來作爲匿名用戶上傳文件後的所有者。 

13、idle_session_timeout=600 
不活動用戶的超時時間,超過這個時間則中斷連接。

14、data_connection_timeout=120 
數據連接超時時間 。

15、ftpd_banner=Welcome to blah FTP service. 
FTP用戶登入時顯示的信息 。

16、local_root=/home/ftp
指定一個目錄,用做在每個本地系統用戶登錄後的默認目錄。 

17、anon_root=/home/ftp
指定一個目錄,用做匿名用戶登錄後的默認目錄。 

18、chroot_local_user、 chroot_list_enable、chroot_list_file
這個組合用於指示用戶可否切換到默認目錄以外的目錄。
其中,chroot_list_file默認是/etc/vsftpd.chroot_list,該文件定義一個用戶列表。
若chroot_local_user 設置爲NO,chroot_list_enable設置爲NO,則所有用戶都是可以切換到默認目錄以外的。
若chroot_local_user 設置爲YES,chroot_list_enable設置爲NO,則鎖定FTP登錄用戶只能在其默認目錄活動,不允許切換到默認目錄以外。
若chroot_local_user 設置爲YES,chroot_list_enable設置爲YES,則chroot_list_file所指定的文件裏面的用戶列表都可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動。
若chroot_local_user設置爲NO,chroot_list_enable設置爲YES,則chroot_list_file所指定的文件裏面的用戶列表都被限定在各自的默認目錄活動,而列表以外的用戶則可以訪問默認目錄以外的目錄。 
建議設置:chroot_local_user與chroot_list_enable都設置爲YES。這樣就只有chroot_list_file所指定的文件裏面的用戶列表可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動!
好處:所有人都被限制在特定的目錄裏面。如果某些特定用戶需要訪問其他目錄的權限,只需將其用戶名寫入chroot_list_file文件就可以賦予其訪問其他目錄的權限! 

19、userlist_file、userlist_enable、userlist_deny 
這個組合用於指示用戶可否訪問FTP服務。
其中,userlist_file默認是/etc/vsftpd.user_list,該文件定義一個用戶列表。 
若userlist_enable設置爲YES,userlist_deny設置爲NO,則只有userlist_file所指定的文件裏面的用戶列表裏面的用戶可以訪問FTP。 
若userlist_enable設置爲YES,userlist_deny設置爲YES,則userlist_file所指定的文件裏面的用戶列表裏面的用戶都被拒絕訪問FTP。
若userlist_enable設置爲NO,userlist_deny設置爲YES,則這個列表沒有實際用處,起不到限制的作用!因爲所有用戶都可訪問FTP。
建議設置:userlist_enable與userlist_deny都設置爲YES。這樣則userlist_file所指定的文件裏面的用戶列表裏面的用戶都被拒絕訪問FTP。
好處:只需將某用戶帳號加入到userlist_file所指定文件裏面的用戶列表,就可以起到暫時凍結該用戶的功能!

20、user_config_dir 
指定一個目錄用於存放針對每個用戶各自的配置文件,比如用戶kkk登錄後,會以該用戶名建立一個對應的配置文件。 
比如指定user_config_dir=/etc/vsftpd_user_conf, 則kkk登錄後會產生一個/etc/vsftpd_user_conf/kkk的文件,這個文件保存的配置都是針對kkk這個用戶的。可以修改這個文件而 不用擔心影響到其他用戶的配置。 


三、重啓FTP服務

    /etc/init.d/vsftpd restart

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章