一,通过yum安装vsftpd
yum install -y vsftpd
二、修改vsftpd的配置文件
cat /etc/vsftpd.conf
anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES pam_service_name=vsftpd userlist_enable=YES one_process_model=NO anon_world_readable_only=NO guest_enable=YES guest_username=vftp listen=YES tcp_wrappers=YES user_sub_token=$USER user_config_dir=/etc/vsftpd/vconf listen_port=5521 idle_session_timeout=600 connect_timeout=30 allow_writeable_chroot=YES
 配置文件最后添加  allow_writeable_chroot=YES
要不然报错:500 OOPS: vsftpd: refusing to run with writable root inside chroot()
三 虚拟用户的配置文件
[root@nfs199 vsftpd]# cat virtusers test 账号 abc@123 密码
四,创建虚拟用户的配置文件
[root@nfs199 vconf]# pwd /etc/vsftpd/vconf [root@nfs199 vconf]# ll 总用量 4 -rw-r--r-- 1 root root 237 12月 26 09:28 test
-------------------------------------------------
cat test
local_root=/data/app/m/
anonymous_enable=NO
write_enable=YES
anon_upload_enable=YES
anon_umask=022
anon_mkdir_write_enable=YES
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000
------------------------------------------------------
注意ftp的目录权限
新建一个vftp的系统账号
useradd vftp -s /sbin/nologin
chown vftp.vftp /data/app/m/
五: 生成数据库文件
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
六 pam验证文件
root@nfs199 vsftpd]# cat /etc/pam.d/vsftpd 
#%PAM-1.0
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth       required     pam_shells.so
auth       include      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth
七 重启服务
systemctl restart vsftpd.service