如何设置 ftp-user 权限以便其可以 FTP 访问 /home/another-user/www/public_html 文件夹?

如何设置 ftp-user 权限以便其可以 FTP 访问 /home/another-user/www/public_html 文件夹?

我是 Linux/Unix 新手。基本上,我正尝试通过 SSH 在 Linux 机器上设置 Web 服务器和 FTP 服务器。

我的计划是将 Apache 的根文件夹放在主用户帐户中,例如

/home/giuseppe/www/public_html

并拥有一个 ftp 用户帐户,该帐户应能通过rw-FTP 访问/home/giuseppe/www/public_html

我仍然无法ftp-user访问public_html其他帐户主文件夹中的目录。

当我使用 通过 FTP 连接时ftp-user,它默认进入其主目录。

以下是我目前已采取的步骤:

  • 我已经安装vsftpd并编辑了/etc/vsftpd/vsftpd.config端口等,以便能够连接该ftp-user帐户。我还设置了local_root=/home/giuseppe/www/public_html/

  • vsftpd任何配置更改后我都重新启动了服务。

  • 我添加了一个名为developers

  • 我已成为ftp-user的成员developers,因此id ftp-user得到:

    uid=500(ftp-user) gid=502(developers) groups=502(developers)

  • 我已经将组更改public_htmlchgrp developers /home/giuseppe/www/public_html/

但是,每次我通过 FTP 连接时,该ftp-user帐户仅对其自己的主文件夹具有 rw 访问权限。

测试时,我添加了一个符号链接ln -s /home/giuseppe/www/public_html /home/ftp-user/。虽然我可以在主目录中看到符号链接ftp-user,但我无法浏览符号public_html链接。这是我双击符号链接时 Filezilla 的状态日志:

Status: Retrieving directory listing...
Command:    CWD /home/ftp-user
Response:   250 Directory successfully changed.
Command:    CWD public_html
Response:   550 Failed to change directory.
Error:  Failed to retrieve directory listing
Status: Starting download of /home/ftp-user/public_html
Command:    PASV
Response:   227 Entering Passive Mode (XXX,XXX,XXX,XXX,4,14).
Command:    RETR public_html
Response:   550 Failed to open file.
Error:  Critical error

我计划的设置是否合理或者您是否会采用不同的设置?

相关内容