创建仅能访问 Web 目录中某些文件夹的 FTP 帐户

创建仅能访问 Web 目录中某些文件夹的 FTP 帐户

我拥有一台 VPS 服务器。目前我还没有在上面安装任何 FTP 服务器,我只使用 SSH 和 SFTP。我使用的是 Debian 6 Squeeze 和 Apache2 服务。Web 目录位于 /var/www/

好吧,我想创建不同的 FTP 帐户并授予某些人访问权限(每个用户一个帐户)。在我的 Web 目录中,我有如下结构:

/var/www/mtaplugins/music/mplayer/music/ /var/www/mapuploader/ 以及其中的更多文件夹。我想创建一个 FTP 帐户,该帐户应该能够访问其中一个文件夹及其内部的文件夹。

在安装任何东西或做任何事情之前,我希望得到一些建议或步骤,因为我对此一无所知。

我原本想使用 ProFTPd,但正如我在文档中看到的,它只会为我的服务器中的每个用户创建一个帐户,而我不想创建更多用户(我总是使用 root)

提前致谢

答案1

在这种情况下,您可以安装vsftpd并进行设置以允许系统用户通过 ftp 访问他的主目录/var/www/mapuploader/USER1,,,/var/www/mapuploader/USER2/var/www/mapuploader/USERN

因此。例如:

useradd -d /var/www/mapuploader/userN -m -s /bin/bash userN

完成此步骤后,您将拥有一个以 为主目录的用户帐户/var/www/mapuploader/user1,但您需要为该用户设置密码:

passwd userN

输入并重新输入新密码,稍后您将使用该密码通过 ftp 登录。现在安装vsftpd

apt-get install vsftpd

并对默认配置文件进行一些更改

nano /etc/vsftpd.conf

您需要为几个变量设置一些值:

匿名启用=否

本地启用=是

写入启用=是

本地 umask=022

chroot_local_user=是

其余变量保持不变。保存更改。

现在你需要重新启动比斯福重新读取配置文件:

/etc/init.d/vsftpd restart

现在您的系统用户可以通过 ftp 访问您的主目录。

相关内容