LinuxForum.Fans
Тема

Настройка квот для анонимного доступа к виртуальному хосту proftpd

Автор: frostflame 9 сообщений 3009 просмотров
#253576

Доброго времени суток!
ниже приведена секция описывающая работу виртуального хоста из файла virtuals.conf


<VirtualHost ***>
ServerAdmin ***
ServerName "***"
TransferLog /var/log/proftpd/xfer/ftp.server.com
TransferRate RETR 1
MaxLoginAttempts 3
RequireValidShell no
DefaultRoot ~
AllowOverwrite yes
#setting where from to take parametrs for quota
QuotaLimitTable file:/home/ftp/ftpquota.limittab
QuotaTallyTable file:/home/ftp/ftpquota.tallytab

<Anonymous ~/tmp>
User anonymous_u
Group anonymous
#UserAlias anonymous_u ftp
# Cosmetic changes, all files belongs to ftp user
DirFakeUser on anonymous_u
DirFakeGroup on anonymous_u
# We want 'welcome.msg' displayed at login, and '.message' displayed
# in each newly chdired directory.
#DisplayLogin welcome.msg
#DisplayChdir .message
# Limit WRITE
<Directory />
<Limit WRITE>
AllowAll
</Limit>
</Directory>
# Allow STORE
<Directory />
<Limit STORE>
AllowAll
</Limit>
</Directory>
</Anonymous>

Модуль mod_quotatab.c в proftpd.conf активирован


<IfModule mod_quotatab.c>
QuotaEngine on
</IfModule>

А вот листинг сессии на сервере

xxx@students:~$ ftp xxx
Connected to xxx.
220 ProFTPD 1.3.3a Server (Vitia) [::ffff:xxx]
Name (xxx:xxx): anonymous_u
331 Anonymous login ok, send your complete email address as your password
Password:
230 Anonymous access granted, restrictions apply
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> quote site quota
202 No quotas in effect
ftp>

И вот это то и не понятно - почему квоты не установились???

#253578

да и чуть не забыл - собственно сами таблицы

root@:/home/ftp# ftpquota --show-records --type=limit
-------------------------------------------
Name: anonymous_u
Quota Type: User
Per Session: False
Limit Type: Hard
Uploaded bytes: 15728640.00
Downloaded bytes: unlimited
Transferred bytes: unlimited
Uploaded files: 4294967295
Downloaded files: 4294967295
Transferred files: unlimited
root@students:/home/ftp#


root@xxx:/home/ftp# ftpquota --show-records --type=tally
-------------------------------------------
Name: anonymous_u
Quota Type: User
Uploaded bytes: 10485760.00
Downloaded bytes: 10485760.00
Transferred bytes: 0.00
Uploaded files: 4294967295
Downloaded files: 0
Transferred files: 0
#253579

Вот неплохо расписано.

#253582
"newzenon" написал:
Вот неплохо расписано.

А по существу?

#253587
"frostflame" написал:
А по существу?

Я квотирование не настраивал за ненадобностью, для анонимов только шейпер и ограничение кол-ва одновременно подключенных.

#253589
"newzenon" написал:
frostflame пишет:
А по существу?
Я квотирование не настраивал за ненадобностью, для анонимов только шейпер и ограничение кол-ва одновременно подключенных.

???Квотирование это же и есть шейпинг

#253590

Собственно я и пытаюсь настроить

"frostflame" написал:
newzenon пишет:
frostflame пишет:
А по существу?
Я квотирование не настраивал за ненадобностью, для анонимов только шейпер и ограничение кол-ва одновременно подключенных.
???Квотирование это же и есть шейпинг

Хотя нет это меня немного заносит))

#253591

Лови конфиг:

text
ServerName              "linuxru.org"   # Здесь указываеться имя Вашего сервера
ServerType              standalone      # Тип запуска сервера самостоятельно либо через inetd
ServerAdmin             newzenon@gmail.com
DefaultServer           on              # сервер по умолчанию
RequireValidShell       off             # требовать наличия shell в /etc/shells для логина?
AuthPAM                 off             # использовать PAM для авторизации?
AuthPAMConfig           ftp             # имя PAM модуля для авторизации
Port                    21              # номер порта для сервера
Umask                   022             # это число отнимается от 777 для получения маски новосозданных файлов
MaxInstances            30              # максимальное количество процессов (соединений)
MaxClientsPerHost       3               # максимальное количество клиентов подключенных к хосту
TimeoutStalled          300             #
TimeoutNoTransfer       600             #
User                    ftp             # имя пользователя от которого будет запущен сервер
Group                   ftp             # имя группы от которой будет запущен сервер
UseReverseDNS           off
IdentLookups            off
TransferLog             /var/log/proftpd.xfer.log
AllowOverwrite          on

<IfModule mod_shaper.c> ShaperLog /var/log/proftpd.shaper ShaperEngine on ShaperTable /etc/proftpd/shaper.tab ShaperControlsACLs info allow user * ShaperAll downrate 200 uprate 200 </IfModule>

<Global> DefaultRoot ~ # Non-anonymous users automatically get jailed in their homedir # AllowChmod false DefaultTransferMode binary # If anybody actually _needs_ ASCII, they'll know how to set it DisplayLogin welcome.msg MaxClients 10 DenyFilter \*.*/ # предотвратить попытку положить или взломать демон proftpd # командой "ls */../*/../*/..." </Global>

<Anonymous /mnt/srv/ftp> # базовая конфигурация анонимного пользователя User ftp # Имя пользователя Group ftp # Имя группы UserAlias anonymous ftp # можем входить как anonymous так и ftp MaxClients 5 # максимальное количество анонимных клиентов #DisplayLogin welcome.msg # при логине вывести содержимое welcome.msg # оно находится в домашней папке пользователя DisplayChdir welcome.msg <Limit WRITE> # запрет записи DenyAll </Limit> </Anonymous>

При смене скорости - остановить, удалить /etc/proftpd/shaper.tab, запустить.
[url=ftp://linuxru.org/]тыц[/url]

#253594

Это одно из экзаминационных заданий, так что выбирать не приходится
По поводу шейпера..для ограничения скорости down и up можно ведь воспользоваться встроенными директивами


TransferRate RETR N; N - число байт - ограничение на download
; думая похожим параметром можно ограничить и скорост upload'a

Есть какие-то преимущества в использовании шейпера?

Войдите или зарегистрируйтесь, чтобы ответить.