目前 VSFTP 存在一个奇怪的问题,文件夹已被 chowned 和 chmodded,如下所示:
drw-rw---- 2 james staff 4096 Aug 10 20:52 folder
因此用户和组具有读写权限。VSFTP 配置如下所示:
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
connect_from_port_20=YES
ftpd_banner=FTP Server
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
pasv_max_port=65535
pasv_min_port=64000
chroot_local_user=YES
dual_log_enable=YES
log_ftp_protocol=YES
xferlog_enable=YES
syslog_enable=NO
但是,我甚至无法浏览文件夹,也无法写入,尽管我应该可以。但是,我将其 chmod 为 770,然后我就可以正常读取和写入,但是,由于不需要执行,因此最好使用 660。有什么想法吗?
谢谢
答案1
要遍历目录,必须设置可执行位。这就是 UNIX 中文件系统权限的工作方式。
770
如果您希望允许组也进行写访问,那么这将是适当的权限。
答案2
您尝试过吗:file_open_mode?
file_open_mode 上传文件创建时的权限。umask 应用于此值之上。如果您希望上传的文件可执行,则可能需要更改为 0777。
(看起来该目录没有 x 权限...这就是为什么您无法通过 CD 进入该目录)
答案3
您无法更改目录,因为您没有为其赋予执行权限。请始终记住,只要您更改目录,该文件夹就会始终执行,如果该目录没有执行权限,那么您就无法更改该目录。
vsftpd 配置参考点击这里