number321 发表于 2014-03-25 09:19

vsftp怎样对每个用户限制磁盘配额?

网上都说vsftp比较安全,但我试了一下配置,发现它好像没有办法为每个用户设置磁盘配额大小。

要么是让vsftp以虚拟账户的身份运行,那么只能给这个虚拟账户设置配额。要么是以linux的系统账户运行,利用linux的磁盘配额功能,但这需要在系统中建多个账户并且每个目录都设置成不同的所有者,但我现在的情况是不允许修改所有者。所以这两种方式都没有办法满足我的要求。

一般的FTP工具都能限制每个用户的磁盘配额大小,像windows下的serv-u,linux下的pureftp等,磁盘配额是一个很常见的需求,为什么vsftp对这个功能没有很好的支持呢?

cryboy2001 发表于 2014-03-27 07:58

个人想法,因为我没有做测试,你试试:

1、用dd产生一个固定大小的文件,mkfs.ext4 格式化文件系统
2、mount这个文件到一个文件夹。
3、用local_root把单个虚拟用户固定在这个文件夹中。

每个虚拟用户重复以上工作

number321 发表于 2014-03-27 11:16

vsftp的虚拟用户只能设置一个吧

cryboy2001 发表于 2014-03-28 10:56

number321 发表于 2014-03-27 11:16 static/image/common/back.gif
vsftp的虚拟用户只能设置一个吧

一个实体用户(在linux下用adduser加的),用来管理与使用vsftp
再加非常多的虚拟用户,可用mysql或txt做为用户的容器。
再加另外的设置来控制虚拟用户的权限与主目录。

jixuuse 发表于 2014-03-28 13:10

使用quota做磁盘配额,不要使用虚拟用户,为每个FTP用户创建本地账号,设置为nologin即可。ftp目录就设置为每个用户的home

这样其实也很麻烦,所以我这边用的是serv-u做的ftp服务器

页: [1]
查看完整版本: vsftp怎样对每个用户限制磁盘配额?