我正在尝试创建一个可以访问 public_html 上多个文件夹的 ftp 用户,但我不希望他访问 public_html 上的所有文件夹。只允许访问特定的文件夹。
以下是 public_html 的文件夹结构
_ftpdevteam1
_ftpdevteam2
site1
site2
site3
site4
site5
site6
site7
site8
我想要做的是创建可以访问 site1-4 的 ftp 用户 ftpdevteam1。ftpdevteam2 可以访问 site5-8
我尝试了这篇文章中的解决方案 http://www.webhostingtalk.com/showthread.php?t=681872
具体来说这部分
ln -s /home/{username}/public_html/index.html /home/{username}/{ftpusername}/index.html
ln -s /home/{username}/public_html/folder1 / /home/{username}/{ftpusername}/folder1
ln -s /home/{username}/public_html/folder2 /home/{username}/{ftpusername}/folder2
但是当我通过 filezilla 访问时出现了这个...
Status: Retrieving directory listing of "/foldername"...
Command: CWD /
Response: 250 OK. Current directory is /
Command: CWD foldername
Response: 550 Can't change directory to foldername: No such file or directory
Error: Failed to retrieve directory listing
有没有办法编辑 ftp 用户的权限以便他们可以访问文件夹?
我在这篇文章中看到了另一个使用 bind 的解决方案 https://www.hostivate.com/blog/cpanel-ftp-user-access-multiple-folders/
但我在第 2 步看到它说
2. We must create the above folders but in the FTP user directory
这似乎不是一个可行的解决方案,因为我的站点已经创建了文件夹。我对第 2 步的理解是,真正的文件夹需要位于 _ftpdevteam1 文件夹中。
谁有其他方法可以实现我想要做的事情?
谢谢
答案1
据我所知,您需要绑定安装。试试这个:
mkdir /home/{username}/{ftpusername}/public_html
sudo mount --bind /home/{username}/public_html /home/{username}/{ftpusername}/public_html