如何为 FTP 用户设置一个位于另一个用户主文件夹内的主目录?

如何为 FTP 用户设置一个位于另一个用户主文件夹内的主目录?

我有一台 Ubuntu (Hardy) 服务器,用于托管多个网站。所有网站都存储在 public_html 文件夹的子文件夹中,这是我登录服务器的主要方式,可通过单个 SSH 帐户访问。

我现在有一个网站用户,他想要 FTP(或类似)访问权限,以便他们将各种文件等上传到他们的网站所在的目录,但是我仍然需要 SSH 帐户才能访问该目录,因为我可能需要使用我的主帐户进行更改。

基本上,我想为一个用户创建一个 FTP 帐户(我已经安装了 VSFTPD),该用户在自己的用户帐户内有主目录,但他们只能读取/写入此文件夹或其子文件夹,而不能进一步向上移动目录树。

我怎样才能实现这个目标?

谢谢

答案1

您可能应该考虑将您的 webroot 移出您的个人目录。

也许是一个系统范围的目录,/var/virtual/然后将所有不同的站点都放在那里,并配置 apache 来使用virtualhost

然后,您只需将ln -s相关网站符号链接()到新用户的目录以及chown文件和目录,以便他可以管理它们。

当然,您现在可以执行符号链接并更改文件所有权,即使文件嵌套在您的主目录中。您只需要为世界提供读取相关目录的权限,这很可能是,因为 apache 正确托管了这些文件。

然后ln -s /home/user1/public_html/website /home/user2/website,以 root 身份/使用 sudo,chown user2 -R /home/user1/public_html/website/

相关内容