要点:
一、将用户锁定到本身的目录“/”(两种方法)
A、chroot_local_user=YES #全部用户都生效。
B、chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list #将须要控制的用户名添加到这个文件就OK了。
二、拒绝用户访问ftp
cat /etc/pam.d/ftp
vi /etc/vsftpd.conf
vi /etc/ftpusers #添加限制访问的用户名
三、pub目录即容许匿名访问(只能下载,不能上传),同时容许某个用户管理这个pub目录(上传下载, 以及删除文件)
anonymous_enable=YES #开启匿名访问;
local_enable=YES #本地用户认证;
write_enable=YES #容许写入;
local_umask=022 #默认上传文件的权限即 644 目录为755 注:这里权限不对匿名用户有可能不能下载。
四、虚拟用户登录
a、 rpm -qa | grep db4 db4-devel de4-4... db4-utils #查看是否具备这几个包
b、vi /etc/pam.d/ftplogin #创建一个账户密码存储文件:内容奇数行为用户名,偶数行为密码。
C、db_load -T -t hash -f /etc/pam.d/ftplogin /etc/vsftpd_login.db #生成数据库文件 并修改权限为600
d、auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login #添加内容到/etc/pam.d/ftp
e、useradd -d /home/test -s /sbin/nologin test 创建虚拟用户
数据库
centos5.2 5.3 5.4 5.5 都同样的,没啥区别centos