yum安装vsftpd
[[email protected] etc]# yum -y install vsftpd
创建虚拟用户和密码
[[email protected] etc]# cd /etc/vsftpd
[[email protected] vsftpd]# vim vuser.list
创建数据库文件
[[email protected] vsftpd]# db_load -T -t hash -f vuser.list vuser.db
提高虚拟用户的安全性
[[email protected] vsftpd]# chmod 600 /etc/vsftpd/vuser.*
[[email protected] vsftpd]# ls -lh /etc/vsftpd/vuser.*
-rw-------. 1 root root 12K Dec 25 17:55 /etc/vsftpd/vuser.db
-rw-------. 1 root root 21 Dec 25 17:51 /etc/vsftpd/vuser.list
创建映射账号
[[email protected] vsftpd]# useradd -s /sbin/nologin -d /var/ftproot along
[[email protected] vsftpd]# chmod -R 777 /var/ftproot/
创建PAM认证文件
[[email protected] vsftpd]# cd /etc/pam.d/
[[email protected] pam.d]# ls
chfn fingerprint-auth-ac password-auth-ac remote smtp sudo-i vlock
chsh login polkit-1 runuser smtp.postfix su-l vmtoolsd
config-util other postlogin runuser-l sshd system-auth vsftpd
crond passwd postlogin-ac smartcard-auth su system-auth-ac vsftpd.rpmsave
fingerprint-auth password-auth ppp smartcard-auth-ac sudo systemd-user vsftpd.user
[[email protected] pam.d]# vim vsftpd
添加这两行: 注释其他行
auth required pam_userdb.so db=/etc/vsftpd/vuser
account required pam_userdb.so db=/etc/vsftpd/vuser
修改主配置文件
[[email protected] pam.d]# cd /etc/vsftpd/
[[email protected] vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh vuser.db vuser.l
[[email protected] vsftpd]# cp vsftpd.conf vsftpd.conf.bak
[[email protected] vsftpd]# vim vsftpd.conf
[[email protected] vsftpd]# cat vsftpd.conf | grep -v “^$” | grep -v “^#”
anonymous_enable=NO
allow_writeable_chroot=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_umask=022
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
user_config_dir=/etc/vsftpd/users
guest_enable=YES
guest_username=along
userlist_enable=YES
tcp_wrappers=YES
创建users目录文件并为每一个虚拟用户建立配置文件
[[email protected] vsftpd]# mkdir users
[[email protected] users]# vim wzc
anon_upload_enable=YES
anon_mkdir_write_enable=YES
write_enable=YES
anon_world_readable_only=NO
anon_other_write_enable=YES
anon_umask=022
local_root=/var/ftproot/admin
增加权限并注释掉ftpusers下的用户
[[email protected] users]# mkdir /var/ftproot/admin
[[email protected] users]# chown -R along.along /var/ftproot/admin/
[[email protected] users]# cd …
[[email protected] vsftpd]# vim ftpusers
注释所有行
关掉防火墙和降低沙盒等级并重启服务
[[email protected] vsftpd]# systemctl stop firewalld
[[email protected] vsftpd]# setenforce 0
[[email protected] vsftpd]# systemctl restart vsftpd
好了 ,到这就可以验证了
ftp 跟自己的 IP地址