Proftpd. Настройка квот
Версия от 14:46, 17 сентября 2019; Root (обсуждение | вклад)
После настройки Proftpd проверяем что модуль квот присутствует и добавляем такой блок в конфиг
<IfModule mod_quotatab.c> QuotaEngine on QuotaLog /var/log/proftpd/quota.log QuotaDisplayUnits Mb QuotaOptions ScanOnLogin QuotaShowQuotas on QuotaLimitTable file:/etc/proftpd/quota/ftpquota.limittab QuotaTallyTable file:/etc/proftpd/quota/ftpquota.tallytab </IfModule>
Создаём базы для лимитов и даём права
# cd /etc/proftpd/quota # ftpquota --create-table --type=limit # ftpquota --create-table --type=tally # chown proftpd.nogroup ftpquota*
Добавляем квоту в 10 мегабайт для пользователя ftpuser, рестартим сервер и проверяем
# ftpquota --add-record --type=limit --quota-type=user --name=ftpuser --bytes-upload=10 --units=Mb
В proftpd.log
2019-09-17 11:27:12,519 ds01 proftpd[27732] 195.201.243.70 (5.187.65.81[5.187.65.81]): notice: user ftpuser: aborting transfer: Disk quota exceeded
В quota.log
2019-09-17 11:27:12,510 mod_quotatab/1.3.1[27732]: quotatab write(): limit exceeded, returning Disk quota exceeded 2019-09-17 11:27:12,519 mod_quotatab/1.3.1[27732]: STOR: quota reached: used 10.00 of 10.00 upload Mb 2019-09-17 11:27:12,521 mod_quotatab/1.3.1[27732]: STOR: quota reached: '1559912015.15913.wav' removed
Прокатило. Заливка файла остановилась.
Текущие квоты можно посмотреть так
# ftpquota --show-records --type=limit ------------------------------------------- Name: ftpuser Quota Type: User Per Session: False Limit Type: Hard Uploaded bytes: 10485760.00 Downloaded bytes: unlimited Transferred bytes: unlimited Uploaded files: unlimited Downloaded files: unlimited Transferred files: unlimited