FTP权限悖论

FTP权限悖论,ftp,user-controls,Ftp,User Controls,我有一个与debian,Apache2.0,php,一切VPS!(不,只是基本的)。 我需要授予某个用户访问特定文件夹的权限。(不同,但基本是/var/www/,每个用户都应该有一个个人文件夹) 我设法创建了一个有特定主页的账户,但无法“浏览”(很难…但我在整个谷歌中搜索) 嗯,他们不能创建、修改那个文件夹(他们的家)中的任何东西。 如果我尝试使用其中一个帐户,它会告诉我: Response: 550 Rename failed. 嗯,我想:权限错误,比我更严重 chown user pa

我有一个与debian,Apache2.0,php,一切VPS!(不,只是基本的)。 我需要授予某个用户访问特定文件夹的权限。(不同,但基本是
/var/www/
,每个用户都应该有一个个人文件夹)

我设法创建了一个有特定主页的账户,但无法“浏览”(很难…但我在整个谷歌中搜索)

嗯,他们不能创建、修改那个文件夹(他们的家)中的任何东西。 如果我尝试使用其中一个帐户,它会告诉我:

Response:   550 Rename failed.
嗯,我想:权限错误,比我更严重

chown user path
/etc/init.d/vsftpd restart
我在ftp中与用户一起输入,并尝试登录,错误:

好的,我必须
chown root path
让用户重新访问fpt

同样,没有编辑/创建/删除的权限,我想:好吧!chmod 777整个文件夹和子文件夹

Response:   500 OOPS: vsftpd: refusing to run with writable root inside chroot()
eError: Critical error: Could not connect to server
所以,这是一个僵局,显然我做错了什么

我现在通过谷歌搜索错误,发现:编辑
vsftpd.conf
添加:

allow_writeable_chroot=YES
allow_writable_chroot=YES
(以防万一我使用了vsftpd ext而不是vsftpd)

下面是我如何创建ftp帐户的

1)
/#useradd-d path-s/dev/null user>/dev/null 2>&1

2) 已编辑的etc/shell文件,添加以下内容:
/dev/null

3) 编辑的etc/vsftpd.conf removig评论

local_enable=YES
write_enable=YES
感谢所有能帮助我的人,如果我的英语真的很差,我很抱歉,但我认为你应该责怪意大利的学校制度。。。好吧,我的错

解决方案

经过很多麻烦(真的,很多!),我找到了问题所在,并修复了:

问题是Debian7+VSFTPD2.x

此vsftpd版本不允许
allow\u writeable\u chroot=YES

幸运的是,一些天使发现了这个bug,并创建了一个固定版本的vsftpd

使用它只是:

  • deb喘息更新主要非自由因素

    使用此命令创建sources.list

    echo "deb http://ftp.cyconet.org/debian wheezy-updates main non-free contrib" >>  /etc/apt/sources.list.
    
  • 能力倾向更新

  • aptitude安装-t wheezy更新debian cyconet存档密钥环vsftpd

  • echo“allow_writeable_chroot=YES”>>/etc/vsftpd.conf

  • /etc/init.d/vsftpd重新启动

  • 完成此操作后,您可以创建一个帐户,并在chroot()内使用可写root,方法与我之前发布的方法相同


    多亏了

    使用命令'allow\u writeable\u chroot=YES',登录时也会出现同样的错误。
    echo "deb http://ftp.cyconet.org/debian wheezy-updates main non-free contrib" >>  /etc/apt/sources.list.