vsftp上传文件出现553 Could not create file解决方法

首先,要看你是用什么用户上传了,如果是普通用户的话:


1.要确定目标文件夹有没有读写的权限,(当然也要有执行的权限,不然不能打开文件夹)
2如果都有了,那就是selinux限制了,把selinux关掉就可以了。(setenforce 0)


如果是anonymous用户的话:
和上面一样,关掉selinux,再给予相应的权限就可以解决
我这里要说一种不关掉selinux的解决方法
先运行getsebool -a | grep ftp (查看selinux里有哪些关于ftp的)

allow_ftpd_anon_write --> off
allow_ftpd_full_access --> off
allow_ftpd_use_cifs --> off
allow_ftpd_use_nfs --> off
ftp_home_dir --> off
ftpd_connect_db --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
接下来我们allow_ftpd_anon_write allow_ftpd_full_access 这两个ON掉
setsebool -P allow_ftpd_anon_write  on  
setsebool -P allow_ftpd_full_access on
这样子就OK了,如果出现
500 OOPS: vsftpd: refusing to run with writable anonymous root
500 OOPS: priv_sock_get_cmd
就是你把VSFTPD的根目录给了777的权限了,把它改成755,然后再在这个目录里建文件夹,可以给777的权限!

你可能感兴趣的:(File,vsftpd,create,could,not,553)