需求:
1.匿名使用者無法登入
2.使用者登入後只能在自己的 /home 上傳下載
3.只有特定帳號可瀏覽其他人的資料夾 並拿取資料
1.安裝vsftpd
# yum -y install vsftpd
2.編輯設定檔
# vi /etc/vsftpd/vsftpd.conf
※匿名使用者都拒絕登入※
anonymous_enable=NO
※開放本機使用者登入,限定在自己的家目錄,並給予上傳下載的權限※
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list //可以不受限定在自己家目錄的帳號
※開啟被動連線※
這個沒設定的話,很容易讓人連線時,撈取不到目錄
port可以自行設定,這裡我設定5000&9000
pasv_min_port=5000
pasv_max_port=9000
※同時防火牆記得設定※
# vi /etc/sysconfig/iptables
-A INPUT -i eth0 -p tcp --dport 21 -j ACCEPT
-A OUTPUT -o eth0 -p tcp --sport 21 -j ACCEPT
-A INPUT -i eth0 -p tcp --dport 5000:9000 -j ACCEPT
問題:
1.vsftpd運作時,連線進來時 遇到
500 OOPS: cannot change directory
此問題是SELINUX 所造成的影響
# sestatus -b | grep ftp
allow_ftpd_anon_write off
allow_ftpd_full_access off
allow_ftpd_use_cifs off
allow_ftpd_use_nfs off
ftp_home_dir off
ftpd_connect_db off
ftpd_use_fusefs off
ftpd_use_passive_mode off
httpd_enable_ftp_server off
tftp_anon_write off
tftp_use_cifs off
tftp_use_nfs off
# setsebool -P ftp_home_dir on
重新啟動 FTP Server 即可,如果還是不行,請再開啟下面的選項
# setsebool -P allow_ftpd_full_access on
參考資料:
http://blog.ilc.edu.tw/blog/blog/25793/post/78481/454578
留言列表