VSFTPD 无法在上传文件后立即下载文件

VSFTPD 无法在上传文件后立即下载文件

我不知道要启用的具体选项vsftpd.conf,但是当我上传文件时权限为“366”,因此我没有读取权限,无法下载。要使文件上传后的 chmod 权限为“666”,应该启用哪种选项?

提前谢谢您。这一定很简单,但我搞不懂。

这是vsftpd.conf没有注释掉的行

listen=YES
anonymous_enable=YES
anon_root=/var/ftp/
local_enable=YES
write_enable=YES
local_umask=777
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key

答案1

如果您以匿名身份上传,那么它就会按设计运行:防止人们匿名共享文件,并在涉及任何非法活动时让您陷入麻烦。

其理念是,人们上传文件,您检查文件,然后将其删除或移动到公共目录,并使您的所有用户或整个互联网都可以访问它们(如果您愿意的话)。

您的 local_umask 仅适用于本地用户,因此它不适用于匿名上传。

如果您以本地身份验证的用户身份上传,我会错过您的配置错误。

答案2

vsftpd 守护进程将创建文件权限为 0777。从中减去 local_umask ( 0777 )。因为您需要将文件权限保留为 666。将 local_umask 值更改为 111 即可。

我建议访问此网站以获得更多了解。

什么是 Umask 以及如何在 Linux 下设置默认 umask?

相关内容