2013-01-03

Centos 5.8 vsftp - 虛擬用戶 設定

Centos 5.8  vsftp - 虛擬用戶 設定


安裝 ftp 工具
yum -y install vsftpd ftp

建立 log 文件
touch /var/log/vsftpd.log

開機自動啟動服務
chkconfig vsftpd on

編輯文件
vim /etc/vsftpd/vsftpd.conf

(不允許匿名訪問)
anonymous_enable=NO

(允許本機用戶登入,當使用虛擬用戶時,設定NO則無法等入 )
local_enable=YES

(使用者無法離開主目錄)
chroot_list_enable=YES

(主目錄路徑)
chroot_list_file=/etc/vsftpd/chroot_list

(設定vsftpd日誌,上列步驟已創建)
xferlog_file=/var/log/vsftpd.log

(允許ASCII上傳)
ascii_upload_enable=YES

(允許ASCII下載)
ascii_download_enable=YES

(PAM認證文件名,PAM根據/etc/pam.d/vsftpd進行認證)
pam_service_name=vsftpd

其他
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
dirmessage_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES

userlist_enable=YES
tcp_wrappers=YES


關於虛擬用戶的設定

 (啟動虛擬用戶)
guest_enable=YES

(指定虛擬用戶的帳戶,CENTOS已內建的帳戶)
guest_username=ftp

※ 設定 vsftp 個人虛擬用戶存放路徑 (配置文件名 = 虛擬用戶名)
user_config_dir=/etc/vsftpd/vuser_conf

touch /etc/vsftpd/chroot_list
echo ftp >> /etc/vsftpd/chroot_list

安裝驗證工具
yum -y install db4 db4-utils


建立 帳密文件
vi /etc/vsftpd/vuser_passwd.txt

(一個帳號(奇數),一行密碼(偶數)) 如下所例:
username1
password1
username2
password2


生成db文件
db_load -T -t hash -f /etc/vsftpd/vuser_passwd.txt /etc/vsftpd/vuser_pass

編輯認證管理器訊息
vim /etc/pam.d/vsftpd

註解所有內容,添加下列兩筆:
auth required pam_userdb.so db=/etc/vsftpd/vuser_passwd
account required pam_userdb.so db=/etc/vsftpd/vuser_passwd

創建個人虛擬用戶的文件
mkdir /etc/vsftpd/vuser_conf/
vim /etc/vsftpd/vuser_conf/username1

設定如下:
local_root=/etc/vsftpd/username1
write_enable=YES
anon_umask=022
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

設定虛擬用戶的存放路徑,並設定權限
mkdir /etc/vsftpd/username1
chmod 777 /etc/vsftpd/username1

調整一下權限
cd /var/ftp
chmod 777 -R pub

重新啟動vsftp
/etc/init.d/vsftpd restart

done!!!




沒有留言:

張貼留言