【问题标题】:FTP permission ParadoxFTP权限悖论
【发布时间】:2016-01-29 00:09:13
【问题描述】:

我有一个带有 debian、apache 2.0、php 的 VPS,应有尽有! (不,只是必不可少的)。 我需要让某些用户访问特定文件夹。 (不同,但base是/var/www/,每个用户都应该有一个个人文件夹)

我设法创建了具有特定家庭的帐户,并且无法“浏览”(很难......但我确实在整个谷歌中搜索)。

好吧,他们无法创建,修改该文件夹(他们的家)中的任何内容。 如果我尝试使用这些帐户之一,它会给我:

Response:   550 Rename failed.

好吧,我认为:权限错误,比我做的要多

chown user path
/etc/init.d/vsftpd restart

我在ftp中使用用户输入,并尝试登录,错误

Response:   500 OOPS: vsftpd: refusing to run with writable root inside chroot()
eError: Critical error: Could not connect to server

好吧,我必须 chown root path 让用户再次访问 fpt。

再一次,没有编辑/创建/删除的权利,我认为:OK! 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/shells 文件,添加:/dev/null

3) 编辑 etc/vsftpd.conf 删除评论

local_enable=YES
write_enable=YES

感谢任何可以提供帮助的人,如果我的英语真的很糟糕,我很抱歉,但我认为你应该责怪意大利学校系统......好吧,我的错!

【问题讨论】:

  • 使用命令 'allow_writeable_chroot=YES' 在登录时会出现同样的错误。

标签: ftp user-controls


【解决方案1】:

解决方案

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

问题是 Debian 7 + vsftpd 2.x

此 vsftpd 版本不允许 allow_writeable_chroot=YES

幸运的是,某个天使发现了这个错误并创建了一个固定版本的 vsftpd。

仅使用它:

  1. 添加

    deb http://ftp.cyconet.org/debianwheezy-updates 主要非免费贡献

    用这个命令到sources.list

    echo "deb http://ftp.cyconet.org/debian wheezy-updates main non-free contrib" >>  /etc/apt/sources.list.
    
  2. aptitude update

  3. aptitude install -t wheezy-updates debian-cyconet-archive-keyring vsftpd

  4. echo "allow_writeable_chroot=YES" >> /etc/vsftpd.conf

  5. /etc/init.d/vsftpd restart

完成此操作后,您可以使用我发布的方法创建一个帐户并在 chroot() 中使用可写根。

感谢The Frontier Group

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2012-05-14
    • 2019-02-11
    • 2018-04-17
    相关资源
    最近更新 更多