首页 > 代码库 > vsftp虚拟用户权限问题

vsftp虚拟用户权限问题

前面写的一篇文章《vsftp 实现不同用户不同权限配置》没有对虚拟用户的权限做解释,今天补一篇详细解释一下

virtual_use_local_privs=NO      #匿名用户不具有本地用户的权限,看不到目录中的文件,即不可浏览。

anon_world_readable_only=NO     #匿名用户可以浏览FTP目录和下载文件

anon_upload_enable=YES            #允许匿名用户上传文件  

anon_mkdir_write_enable=YES    #允许匿名用户建立和删除目录  

anon_other_write_enable=YES    #允许匿名用户改名和删除文件

enable_write=YES                       #拥有写的权限。

问题是上述的参数并不是独立的,而是相互作用的,比如一个用户虚拟用户a想让它只有上传文件的权限理论上如下的配置就可以实现了

virtual_use_local_privs=NO

anon_world_readable_only=NO 

anon_upload_enable=YES

但是实际情况你会发现你不能上传文件,上传时出现530 permission denied

这是因为你没给它写的权限呀!所以还得要加上一句enable_write=YES才可以。

假如现在我想建立一个用户,可以上传文件,可以建立文件夹,但是不能重命名已经上传了的文件和文件夹,不能删除文件

那么他的权限配置会是怎样的呢?应该是如下这般的:

virtual_use_local_privs=NO          #不具有可登录用户的权限

anon_world_readable_only=NO    #可浏览目录

write_enable=YES               #

anon_upload_enable=YES         #要同时具备写和匿名上传权限,才能上传。

anon_mkdir_write_enable=YES    #可以新建文件夹,但不能修改文件名,不能删除文件/夹

实际测试环境中通过(centos 6.8)

 

vsftp虚拟用户权限问题