通过VSFTPD创build的文件的默认所有者/权限

如何设置创build的目录和文件的默认值为775? 我的理解是,我需要修改VSFTPD的umask,但我怎么知道要改变它呢?

你需要的Umask和最终权限应该加起来为777.因为你需要775个权限,你需要777 – 775 = 002作为umask。

如果你想知道在哪里设置你的umask,可以在vsftpdconfiguration文件(/etc/vsftpd.conf)中anon_umask为匿名访问anon_umask和用户local_umask

为了使掩码正常工作(即使没有匿名访问),似乎有必要设置anon_upload_enable=YESanon_mkdir_write_enable=YES 。 如果这些没有设置,那么对于通过ftp上传的文件上的组或其他人(即使标准权限可能被设置为其他内容),也不允许写入,读取和执行。

在你的情况下,如果你需要用户authentication的访问,你应该设置以下内容:

 anonymous_enable=NO local_enable=YES write_enable=YES local_umask=0002 anon_upload_enable=YES anon_mkdir_write_enable=YES file_open_mode=0777 

这里, file_open_mode设置文件的默认设置。 777使其可读,可写和可执行的任何人。 随着local_umask设置为002 ,这给你775 ,你所要求的。

Notica local_umask默认为077 ,禁止组和其他人以任何方式访问文件(因此在这里设置)。

进一步阅读: https : //security.appspot.com/vsftpd/vsftpd_conf.html