VSFTPD虛擬用戶配置

 

轉載:http://www.cnblogs.com/allenjin/archive/2011/12/03/2274542.htmlhtml

 

如下操做驗證OK!!!!linux

 

VSFTPD虛擬用戶配置

VSFTP = Very Secure FTP
1.VSFTP在單機(非集羣)上支持4000個以上的併發用戶同時鏈接
2.根據RedHat的Ftp服務器(ftp.redhat.com)的數據,VSFTP服務器能夠支持15000個併發用戶

FTP協議有兩種工做方式:PORT方式和PASV方式,中文意思爲主動式和被動式。

PORT(主動)方式的鏈接過程:
客戶端向服務器的FTP端口(默認是21)發送鏈接請求,服務器接受鏈接,創建一條命令鏈路。
當須要傳送數據時,客戶端在命令鏈路上用PORT命令告訴服務器:「我打開了XXXX端口,你過來鏈接我」。
因而服務器從20端口向客戶端的XXXX端口發送鏈接請求,創建一條數據鏈路來傳送數據。

PASV(被動)方式的鏈接過程:
客戶端向服務器的FTP端口(默認是21)發送鏈接請求,服務器接受鏈接,創建一條命令鏈路。
當須要傳送數據時,服務器在命令鏈路上用PASV命令告訴客戶端:「我打開了XXXX端口,你過來鏈接我」。
因而客戶端向服務器的XXXX端口發送鏈接請求,創建一條數據鏈路來傳送數據。

若是FTP客戶端軟件設置的是被動鏈接,那麼VSFTP配置文件須要設置被動端口。

安裝VSFTP
yum install vsftpd

安裝DB軟件包
yum install db-util

配置文件目錄
/etc/vsftpd

創建虛擬用戶口令庫文件
(第一行寫 用戶名,第二行寫 密碼,保存退出)
vi vusers.list
user1
pass1
user2
pass2

生成vsftpd的認證文件
db_load -T -t hash -f vusers.list /etc/vsftpd/vsftpd_login.db    #生成認證文件
chmod 600 /etc/vsftpd/vsftpd_login.db        #賦權


創建虛擬用戶所需的PAM配置文件
(加入下面內容,其餘所有註釋)
vi /etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd/vsftpd_login


創建虛擬用戶要訪問的目錄並設置權限
useradd -d /home/svellftp -s /sbin/nologin svellftp
chmod 777 /home/svellftp/

禁錮FTP用戶在宿主目錄
vi /etc/vsftpd.chroot_list
user1
user2

對不一樣虛擬用戶設置不一樣權限
mkdir /etc/vsftpd/vusers_conf

在 vsftpd.conf 添加如下參數配置項
guest_enable=YES
guest_username=svellftp
user_config_dir=/etc/vsftpd/vusers_conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
pasv_min_port=3000
pasv_max_port=3010

創建用戶單獨配置文件,文件名就是用戶名
vi /etc/vsftpd/vusers_conf/user1
local_root=/home/svellftp/user1        #這裏的虛擬用戶目錄能夠根據實際狀況修改
write_enable=YES
virtual_use_local_privs=YES            #虛擬用戶具備寫權限(上傳、下載、刪除、重命名)


注意
----------------------------------------
/home/svellftp/user1目錄權限
chown -R svellftp:svellftp user1

若是開啓iptables防火牆,須要配置:
iptables -A INPUT -p tcp -s 0/0 --dport 3000 -j ACCEPT
iptables -A INPUT -p tcp -s 0/0 --dport 3000:3010 -j ACCEPT

若是開始SELinux,須要解除selinux阻止:
setsebool -P ftpd_disable_trans 1
service vsftpd restart

參數
----------------------------------------
virtual_use_local_privs參數
virtual_use_local_privs=YES
虛擬用戶和本地用戶有相同的權限

virtual_use_local_privs=NO
虛擬用戶和匿名用戶有相同的權限,默認是NO

virtual_use_local_privs=YES
write_enable=YES
虛擬用戶具備寫權限(上傳、下載、刪除、重命名)

virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=YES
anon_upload_enable=YES
虛擬用戶不能瀏覽目錄,只能上傳文件,無其餘權限

virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=NO
虛擬用戶只能下載文件,無其餘權限

virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
虛擬用戶只能上傳和下載文件,無其餘權限

virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_mkdir_write_enable=YES
虛擬用戶只能下載文件和建立文件夾,無其餘權限

virtual_use_local_privs=NO
write_enable=YES
anon_world_readable_only=NO
anon_other_write_enable=YES
虛擬用戶只能下載、刪除和重命名文件,無其餘權限

服務器

相關文章
相關標籤/搜索