我正在 Linux 机器上配置 svftp。
目前,本地用户可以通过 ftp 登录,他们将看到自己的主目录。他们对该目录具有写访问权限。
不,我希望用户在 de 目录中写入/var/www/
。因此,我创建了一个新组apache
。将用户添加到该组并授予该组的写入权限/var/www
。通过终端,所有用户都可以写入.var/www/
。我在主目录中创建了一个链接,/var/www
通过
ln -s /var/www/ /home/user/www
ls
给出:
drwxr-xr-x 2 orangetux orangetux 4096 Jun 23 15:06 ftp
lrwxrwxrwx 1 orangetux orangetux 21 Jun 23 15:00 www -> /var/www/
但是当我使用 FTP 时,我看到了链接,但却无法访问。错误 550 表示文件未找到或访问错误。
我该如何解决这个问题,以便用户可以/var/www
通过他们的主目录进行访问?
答案1
找到了这里
问)我可以将用户限制到他们的主目录吗?答)可以。您可能想要设置:chroot_local_user=YES
但下面写了一个更安全的解决方案。
问)为什么符号链接在 chroot_local_user=YES 时不起作用?答)这是 chroot() 安全性工作方式的结果。作为替代方案,请查看硬链接,或者如果您拥有现代 Linux,请参阅功能强大的“mount --bind”。