3、建立pam认证所需文件
#vi /etc/pam.d/vsftpd.my //添加如下两行 auth required /lib/security/pam_mysql.so user=vsftpd passwd=123456 host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2 account required /lib/security/pam_mysql.so user=vsftpd passwd=123456 host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=24、修改vsftpd的配置文件,使其适应mysql认证
建立虚拟用户映射的系统用户及对应的目录 # useradd -s /sbin/nologin -d /var/ftpuser ftpuser //这个家目录将成为虚拟用户访问ftp目录的起始位置 # chmod go+rx /var/ftpuser 请确保/etc/vsftpd/vsftpd.conf中已经启用了以下选项anonymous_enable=YES
local_enable=YES
write_enable=YES
anon_upload_enable=NO
anon_mkdir_write_enable=NO
以上这几项都是默认的,只要添加下面一条即可
chroot_local_user=YES添加以下选项
pam_service_name=vsftpd.my
userlist_enable=YES
tcp_wrappers=YESguest_enable=YES
guest_username=ftpuser#service vsftpd restart
5、测试配置
# ftp localhost Connected to localhost (127.0.0.1). 220 (vsFTPd 2.0.5) Name (localhost:root): marion 331 Please specify the password. Password: //密码是redhat 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls