VSFTPD:默认为本地用户子目录

VSFTPD:默认为本地用户子目录

目标:当本地用户登录 ftp 时,用户将被定向到 /home/{username}/htdocs。预期是 FileZilla 或同等程序将显示 / 和下面的 /home/{username}/htdocs 的内容,如下所示:

/-
  -file1
  -file2
  |-dir1
  |-dir2

我能得到的最接近的是将 / 视为 /home/{username},然后将其内容视为下面的样子。

/-
  |-htdocs
    |-file1
    |-file2
    |-dir1
    |-dir2

我尝试了 vsftpd 上所有帖子建议的多种配置,但似乎没有一种能让我达到我想要的目的。要么是无法从这里到达那里,要么是我遗漏了什么。

我已将 vsftpd.conf 精简到最低限度:

listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
use_localtime=YES
connect_from_port_20=YES
virtual_use_local_privs=YES
#chroot_local_user=YES
user_config_dir=/etc/vsftp/users

/etc/vsftp/users 包含一个名为 {username} 的文件,其中包含

local_root=/home/{username}/htdocs

这并不能让我到达我想要去的地方。

那么,我遗漏了什么?

[注:这是预期我的问题没有结果关于proftpd]

谢谢。

乔治

答案1

答案是安装早期版本的 vsftpd!

我最初刚刚安装了 vsftpd,并获得了 2.3.5 版。当我收到有关可写根目录的 OOPS 消息时,我将用户的主目录设为不可写,等等,最终出现了上述情况。进一步的研究让我更仔细地阅读了有关解决 OOPS 问题的评论。一位记者指出,vsftpd 的先前版本没有对可写根目录的限制。因此,我深入研究了历史文件,找到了 2.3.2 版。该版本给了我所寻找的结果。

顺便说一句,我尝试在 32 位虚拟机上安装 3.0.2 版 vsftpd,但出现了与未找到“crypt”相关的错误。由于我已经陷入困境,所以我没有尝试解决该错误。在这种情况下,后退比尝试前进要好。

G

相关内容