Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Eugene Grosbein                      2:5006/1       05 Jan 2004  00:45:36
 To : Victor Sudakov
 Subject : Re: ftp сервер, огранич. скорость
 -------------------------------------------------------------------------------- 
 
 
  VS> Вариант с алиасами и natd чересчур громоздок. Разве что на полное безрыбье.
 
 Подарочек к Рождеству.
 ftp://www.kuzbass.ru/pub/freebsd/patches/ftpd_restr-0.1.tgz
 Комментарии, багрепорты принимаются.
 
 Патчи (v 0.1) добавляют к штатному ftpd возможность вводить ограничения
 для пользователей в зависимости от IP, с которого они вошли.
 
 Патчи для FreeBSD 4.9-STABLE.
 
 I Как приложить.
 
 cd /usr/src/libexec/ftpd
 cat /path/to/patches/*.diff | path
 make all install
 
 II Как настроить.
 
 1. Пользователю, которого нужно ограничить, приписать какой-нибудь
 login class через passwd(5). Для anonymous использовать пользователя ftp.
 
 2. В login.conf(5) для этого класса теперь можно прописать:
 
 setenv=VARNAME1=value1,VARNAME2=value2,VARNAME3=value3
 и т.д.
 
 Можно использовать такие имена переменных (VARNAME):
 
 NORETR - ограничение загрузки файлов с сервера (RETR)
 NOSEND - ограничение посылки файлов на сервер (STOR, APPE, STOU)
 NOMKD  - ограничение создания подкаталогов (MKD)
 NODEL  - ограничение удаления (DELE, RMD)
 NOREN  - ограничение переноса/переименования (RNFR, RNTO)
 NOCHMOD   - ограничение изменения атрибутов (SITE CHMOD)
 READONLY  - ограничение любых модификаций (все перечисленное, кроме RETR)
 
 Значения переменных (value) имеют следующий синтаксис:
 restriction1;restriction2;restriction3
 и т.д.
 
 Ограничение (restriction) имеет следующий синтаксис:
 pathmask=!net1&!net2&!net3
 и т.д, причем восклицательный знак необязателен в каждом случае.
 
 pathmask это произвольный путь, в котором допускается свободное использование
 метасимволов shell. Корень соответствует chroot-каталогу, если
 используется для пользователя, иначе "реальному" корню, как его видит ftpd.
 
 pathmask описывает защищаемый объект(ы), соответствующее ограничение
 будет применяться к пользователю, если его IP-адрес БЛОКИРУЕТСЯ списком
 !net1&!net2&!net3 (см. ниже).
 
 Список ограничений просматривается с КОHЦА к HАЧАЛУ до первого pathmask,
 которому соответствует упомянутый пользователем объект, после чего
 просмотр заканчивается.
 
 Список сетей просматривается с КОHЦА к HАЧАЛУ. Просмотр заканчивается,
 как только IP попадает в очередную сеть. Адрес пользователя БЛОКИРУЕТСЯ, если
 перед адресом сети HЕТ восклицательного знака. Адрес пользователя
 HЕ БЛОКИРУЕТСЯ, если восклицательный знак перед адресом сети есть.
 Также адрес пользователя HЕ БЛОКИРУЕТСЯ, если он не попадает ни в одну сеть.
 
 Сеть задается стандартной нотацией 1.2.3.4/5, причем слеш и длину маски
 сети можно не указывать, в таком случае предполагается /32.
 
 3. Примеры
 
 a) Запретить пользователям сети 192.168.1.0/24 загружать файлы из
 каталога /music (и всех подкаталогов):
 
 setenv=NORETR=/music/*=192.168.1.0/24
 
 b) Запретить всем, кроме пользователей сети 192.168.1.0/24, загружать файлы из
 каталога /music (и всех подкаталогов):
 
 setenv=NORETR=/music/*=0.0.0.0/0&!192.168.1.0/24
 
 c) Запретить всем, кроме пользователей сети 192.168.1.0/24, создавать файл
 /incoming/224.624:
 setenv=NOSEND=/incoming/224.624=0.0.0.0/0&!192.168.1.0/24
 
 d) Запретить всем, кроме пользователей сети 192.168.1.0/24,
 писать что-либо внутрь /incoming/local:
 
 setenv=READONLY=/incoming/local=0.0.0.0/0&!192.168.1.0/24
 
 e) Запретить всем, кроме пользователей сети 192.168.1.0/24,
 создавать внутри /incoming иерархии подкаталогов глубиной больше одного:
 
 setenv=NOMKD=/incoming/*/*=0.0.0.0/0&!192.168.1.0/24
 
 f) Запретить всем создавать каталоги с символом ? в имени:
 setenv=NOMKD=*\\?*=0.0.0.0/0
 
 III. Особенности и замечания.
 
 1. Hе забывайте перестраивать /etc/login.conf.db после каждой модификации
 /etc/login.conf
 
 2. Изменения вступают в силу только для вновь подключающихся к серверу
 пользователей, на существующие коннекты не влияют.
 
 3. Вводимые ограничения никоим образом не отменяют ограничения файловой
 системы или ключей -M, -o, -O, -r или любых других существующих,
 а только дополняют их.
 
 4. Ограничения с некорректным синтаксисом игнорируются МОЛЧА,
 а также ограничения с пустыми pathmask, списками сетей, ошибками в
 формате адресов сетей.
 
 5. Ограничение NOREN запрещает переименование/перенос, если исходное 
 и/или результирующее имя подпадает под pathmask.
 Eugene
 -- 
 "Люди забыли эту истину," - сказал Лис, - "но ты не забывай"
 --- slrn/0.9.8.0 (FreeBSD)
  * Origin: Svyaz Service JSC (2:5006/1@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: ftp сервер, огранич. скорость   Eugene Grosbein   05 Jan 2004 00:45:36 
 Re: ftp сервер, огранич. скорость   Eugene Grosbein   05 Jan 2004 00:56:00 
Архивное /ru.unix.bsd/26093349da78c.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional