这里在centos7版本系统下验证的。
在指定的目录(如/var/ftp/software/)使用匿名用户进行文档的上传下载操作,首先要求该目录要有r和w权限。一般情况下,若要上传文档到该目录,则需要用户ftp对文档有w的权限,若要从该目录下载文档,则需要用户ftp对文档有r的权限。
步骤
修改配置文件vsftpd.conf(根据需要配置)
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES #是否允许匿名用户登录
write_enable=YES #enable any form of FTP write command
anon_upload_enable=YES #是否允许匿名用户上传文件
anon_mkdir_write_enable=YES #是否允许匿名用户创建目录
anon_other_write_enable=YES #是否允许匿名用户删除、重命名等
anon_umask=022 #权限掩码,匿名用户上传文档时预设的权限掩码;文件夹权限为
777-022=755,一般的文件权限为 666-022=644;默认权限掩码为077,匿名用户上传之后文件夹权限是700,文件的权限是600。
anon_world_readable_only=YES #当为YES时,文件的other用户必须有r权限才允许下载,即使文件的属主为ftp且对文件有r权限也无法下载,为了安全考虑,默认为YES;当为NO时,则只要属主为ftp且对文件有r权限即可下载;
对允许匿名用户访问的目录设置权限
# mkdir /var/ftp/software #新建可供匿名用户上传下载的文件夹(可选)
# chmod o=rwx /var/ftp/software
注意避免SElinux对用户访问的影响
修改sebool值
# setsebool -P ftpd_anon_write on
修改安全上下文
# chcon -t public_content_rw_t /var/ftp/software/
嫌麻烦这些设置,可索性直接关闭selinux
# setenforce 0