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


11

如何将创建的目录和文件的默认值设置为775?我的理解是,我需要修改VSFTPD上的umask,但是我如何知道将其更改为什么?

Answers:


14

Umask和所需的最终许可权应总计为777。由于需要775许可权,因此您需要777-775 = 002作为umask。


1
请注意,这些是八进制值,因此local_umask=002可能不会给出预期的结果—最好在前缀前加上'0':(local_umask=0002请参阅参考资料man vsftpd.conf)。
Skippy le Grand Gourou 2015年

@SkippyleGrandGourou,002是八进制值,不是吗?为什么要添加另一个领导者0
Jdamian

2
好吧,这可能并不重要002(当时我已经不记得我的需求了),但是对于022(例如,将以10为底22)vs 0022. 无论如何,没有它对我来说是行不通的……
Skippy le Grand Gourou

13

如果您想知道在哪里设置umask,可以在vsftpd配置文件(/etc/vsftpd.conf)中对其进行设置,以anon_umask进行匿名访问和local_umask用户访问。

为了使掩码正常工作(即使没有匿名访问),似乎有必要设置anon_upload_enable=YESanon_mkdir_write_enable=YES。如果未设置这些选项,则不允许对通过ftp上传的文件上的组或其他文件进行写,读和执行操作(即使可能为其他设置了标准权限)。

对于您的情况,如果需要用户验证的访问权限,则应设置以下内容:

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,因为你提出要求。

local_umask默认为的Notica 077,使组和其他人无法以任何方式访问文件(因此在此处设置)。

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


设置为file_open_mode = 7777怎么样?
Shicheng Guo'2

和“ sudo chmod -R 777 / mysharedpath”
mesutpiskin

谢谢弟兄们anon_umask
typelogic
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.