Доступ нескольких пользователей к одной папке фтп
Доброго времени суток!
Настраиваю proftpd с несколькими папками. Столкнулся с необходимостью создания фтп с несколькими юзерами с разными доступами к одной папке. Т.е. есть некая папка /var/ftp/zai она является домашним каталогом для созданного юзера zai группы users. Zai имеет права R/W в папке. Создаю пользователя uzai с указанием того же самого домашнего каталога. Этот пользователь должен иметь только права R.
Сейчас конфиг proftpd.conf такой:
ServerName "RESO-51 FTP RESO-Garantia"
ServerType standalone
DefaultServer on
Port 21
Umask 022
MaxInstances 30
TimeoutLogin 120
TimeoutIdle 180
TimeoutNoTransfer 360
TimeoutStalled 640
CommandBufferSize 50
User nobody
Group nogroup
UseReverseDNS off
IdentLookups off
ScoreboardFile /var/run/proftpd/proftpd
TransferLog /var/log/proftpd/xferlog.legacy
LogFormat default "%h %l %u %t \"%r\" %s %b"
LogFormat auth "%v [%P] %h %t \"%r\" %s"
LogFormat write "%h %l %u %t \"%r\" %s %b"
< IfModule mod_clamav.c >
ClamAV on
< /IfModule >
< Limit LOGIN >
DenyAll
< /Limit >
< Global >
RequireValidShell no
MaxClients 8
MaxLoginAttempts 3
AllowOverwrite yes
IdentLookups off
ExtendedLog /var/log/proftpd/access.log WRITE,READ write
ExtendedLog /var/log/proftpd/auth.log AUTH auth
DefaultRoot ~ users
PathDenyFilter "(^\_ftpaccess$)"
< /Global >
< Anonymous /var/ftp/zai >
User zai
Group users
AnonRequirePassword on
< Limit LOGIN >
AllowUser zai
AllowUser uzai
DenyAll
< /Limit >
< Limit WRITE >
AllowUser zai
Denyall
< /Limit >
< /Anonymous >
Естественно, что uzai айти не может, т.к. указаны поля User и Group. Раньше у меня вместо общего
< Limit LOGIN >
DenyAll
< /Limit >
Было прямо указано
< Limit LOGIN >
AllowUser zai
AllowUser uzai
DenyAll
< /Limit >
При том же значении DefaultRoot. А в секции самой папки не было полей User и Group соответственно. Тогда все нормально работало, zai мог писать, uzai - только читать. При заходе из форточек из Мой компьютер сразу же после введения логина и пароля перемещало в указанную папку. А вот при работе из ИЕ 7 (В ИЕ 6 и Опере все нормально) после ввода логина и пароля открывало листинг / со всеми директориями.
Задав в общих настройках текущую DenyAll и указав пользователя напрямую добился корректной работы везде. Но теперь я не могу прицепить uzai. Пробовал сделать симлинк на данную папку и прописать оный симлинк в качестве домашнего каталога для uzai, а потом задать еще одну папку - симлинк с правами доступа реадонли для юзера uzai. Тогда вход выполняется, но непонятно куда, т.к. папки пользователя zai все равно не видны.
Пробовал User zai,uzai Group Users фтп не ругается на конфиг, но и не пускает.
Как правильно это сделать? Не ругайтесь за глупый вопрос, но куча перерытой информации ответа не дала, а в линукс системах я работаю вторую неделю. Заранее спасибо!
- Для комментирования войдите или зарегистрируйтесь
1) в линуксе нету папок, у
1) в линуксе нету папок, у нас директории
2) для чистого вывода конфигов используйте egrep -v '(^$|^#)' file (отредактируйте пост)
3) уже по сабжу, может стоит попробовать сделать proftpd + virual users + mysql ? У меня это сделано, только через pure-ftpd.
пав
В русском языке нету директорий, у нас каталоги.
Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.
1. И каталогов тоже нет? Как
1. И каталогов тоже нет? Как в ДОСе были? А в чем разница?
2. Сделал, но разницы не заметил. Конфиг был просто скопирован в MC на флешку, открыт в форточках и скопипастен в окно ввода сообщения, тогда теги с <> и пропали. Вставил пробелы.
3. Возможно, этим займусь как время будет свободное. Сейчас надо просто запустить фтп в работу по-минимуму. В общем-то работает все, кроме этого пустячка...
И еще вдогонку вопрос. Gentoo руссифицирована в UTF-8 по классическому мануалу.
Везде русские буквы работают, в том числе и в фтп (там каталог монтируется с помощью CIFS с Windows сервера с русскими буквами в именах файлов и папок). А вот при выводе сообщений от фтп сервера (типа 550 и т.п.) в диалоговом окне пишутся крякозябры. А где хранятся эти сообщения об ошибках и как сделать корректную трансляцию их в 1251 при выводе? Или хотя бы транслитом написать чтоли, а то пользователи не поймут.
это нужно выбирать в клиенте,
это нужно выбирать в клиенте, в протоколе FTP понятие кодирови отсутствует.
или попросить фтп сервер
или попросить фтп сервер перекодировать в нужную: pure-ftpd умеет
1) каталоги или директории,
1) каталоги или директории, w/e
2) cat file |tr -d '\r' |egrep -v '(^$|^#)'
3) такая настройка pufetpd занимает около 20 минут. http://www.opennet.ru/base/net/pure_ftpd_mysql.txt.html