VSFTPD 553错误:无法创建文件

使用Ubuntu 12.04和VSFTPD设置新鲜的LAMP服务器。

我正在尝试使用FTP用户访问/var/www文件夹(Web根目录)。

我创建了一个新用户ftpuser并将其添加到Apache自动创建的www-data用户组中。
该用户的主目录设置为/var/www 。 我还将/var/www的所有权更改为www-data组,并将权限更改为02775

但是,我仍然无法上传文件。 错误是:“553无法创建文件”。

  1. 有人可以解释一下如何正确设置这些权限吗?
  2. 什么是正确的设置? 我应该将ftpuser的主目录设置为/var/www还是以某种方式不同?

我在网上发现了很多主题,但没有一个提供通用的解决方案。

谢谢!


更新:

这是/var/wwwls -l的输出:

drwxr-sr-x 3 root ftpuser 4096

vsftpd.conf文件的内容:

 listen=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chown_uploads=YES chown_username=ftpuser chroot_local_user=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 

问题是因为您的文件夹由root而不是ftpuser

要解决它运行:

 sudo chown -R ftpuser:nogroup /var/www/ftuuserfolder 

我发现我设置了正确的所有权,但没有设置正确的权限。


如果您的文件夹由用户’ftpuser’和组’www-data’拥有,例如,…

drwxr-sr-x 3 ftpuser www-data 4096

然后你可能还没跑……

sudo chmod -R g+w /var/www/ftpuserfolder

这为拥有这些文件/文件夹的组提供了写入权限。