注:先关闭服务器和客户机上的防火墙和SELinux
配置文件位置 /etc/vsftpd/vsftpd.conf
重启服务 systemctl restart vsftpd.service
1、实现可以上传
(1) anon_upload_enable=YES
(2) 在 /var/ftp/ 下创建上传目录
(3) 修改上传目录的权限或所有者,让匿名用户有写入权限
2、实现创建目录和文件其他操作
anon_mkdir_write_enable=YES #允许创建目录
anon_other_write_enable=YES #删除文件、文件改名、文件覆盖
3、用户进入某个文件夹时,弹出相应的说明
(1) 在对应目录下创建 .message 文件,并写入相应内容
(2) 确认 dirmessage_enable=YES 是否启用
(3) 尝试切换目录查看效果
4、实现上传的文件可下载
设置 anon_umask=022
1、服务端需要创建用户并设置密码(不需要登录操作系统,仅用来登录VSFTP)
useradd -s /sbin/nologin username
2、将所有用户禁锢在自己的家目录下
chroot_local_user=YES
3、将部分用户禁锢在自己的家目录下
chroot_list_enable=YES #开启白名单功能,允许白名单中的用户随意切换目录
chroot_list_file=/etc/vsftpd/chroot_list #白名单文件,需要自己创建
4、配置文件: /etc/vsftpd/ftpusers
所有写入此文件内的用户名都不允许登陆 ftp ,立刻生效
5、修改被动模式数据传输使用端口
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=35000
1、建立FTP的虚拟用户的用户数据库文件(/etc/vsftpd)
vi vsftpd.user #奇数行用户,偶数行密码
db_load -T -t hash -f vsftpd.user vsftpd.db
#将用户密码的存放文本转化为数据库类型,并使用 hash 加密
chmod 600 vsftpd.db
#修改文件权限为600,更安全
2、创建FTP虚拟用户的映射用户,并制定其用户家目录
useradd -d /var/ftproot -s /sbin/nologin virtual
#创建 virtual 用户作为 ftp 的虚拟用户的映射用户
3、建立支持虚拟用户的PAM认证文件
cp -a /etc/pam.d/vsftpd /etc/pam.d/vsftpd.pam
#使用模板生成自己的认证配置文件,方便调用
4、
原文:https://www.cnblogs.com/yellowzunzhi/p/12533098.html