Vsftp 安装配置
环境:
CentOS 6.5_x64
1.查看是否安装vsftp
rpm –qa|grep vsftpd
安装vsftp
yum -y install vsftpd
2.修改配置文件/etc/vsftpd/vsftpd.conf
vi /etc/vsftpd/vsftpd.conf
取消下面内容前面的注释或添加
anonymous_enable=YES/NO 是否允许匿名用户访问
chroot_list_enable=YES 限定用户不可以离开主目录
chroot_list_file=/etc/vsftpd/chroot_list
local_enable=YES/NO 本地用户是否可以访问 注:如果为NO 则所有虚拟用户都将不能访问 原因:虚拟用户访问在主机上其实是以本地用户访问的
pam_service_name=vsftpd pam认证文件名 在/etc/pam.d/vsftpd
guest_enable=YES 启用虚拟用户功能
guest_username=ftp 指定虚拟用户的宿主用户 –centos 里面已经有内置的ftp用户了(注:此用户在chroot_list_file=/etc/vsftpd/chroot_list文件里所指定的用户)
user_config_dir=/etc/vsftpd/vuser_conf 设置虚拟用户个人vsftp的服务配置文件
(此文件后面不能出现空格)
3.安装db4-utils
yum -y install db4-utils
4. 创建 chroot_list_file=/etc/vsftpd/chroot_list文件
echo ftp >> /etc/vsftpd/chroot_list (此处ftp 也要是/etc/vsftpd/vsftpd.conf中的guest_username的值)
5.创建虚拟用户目录(密码文本)
vi /etc/vsftpd/vftpuser.txt (奇数行为用户名 ,偶数行为密码)
6.生成虚拟用户的db文件
db_load -T -t hash -f /etc/vsftpd/vftpuser.txtx /etc/vsftpd/vftpuser.db
7.生成虚拟用户的认证文件
vi /etc/pam.d/vsftpd
注释掉/etc/pam.d/vsftpd中所有的内容
特别注意 以下区别
32位系统增加以下两句:
auth required pam_userdb.so db=/etc/vsftpd/vftpuser
account required pam_userdb.so db=/etc/vsftpd/vftpuser
64位系统增加以下两句:
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser
注:db=/etc/vsftpd/vftpuser 中的vftpuser 是你生成的虚拟用户的db文件,系统会自动添加后缀'.db'
8.创建每个虚拟用户自己的配置文件
mkdir /etc/vsftpd/vuser_conf (/etc/vsftpd/vsftpd.conf中的user_config_dir=/etc/vsftpd/vuser_conf路径)
vi /etc/vsftpd/vuser_conf/zz (/etc/vsftpd/vuser_conf/下面创建以用户名为名称的文件(名称是/etc/vsftpd/vftpuser.txt 下面的奇数行))
内容如下
local_root=/var/www(虚拟用户的根目录根据实际修改)
write_enable=YES (可写)
download_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_umask=022
9.给文夹权限(否则不能上传 权限可自定 本人给的是 777)
chmod 777 /var/www/
10.重启vsftpd
service vsftpd restart
或
/etc/init.d/vsftpd start
注意:
安装不正常时, 可访问日志信息:
tail -f /var/log/secure