FTP: сервер с разделением доступа по пользователю/группе

Модератор: /dev/random

IMB
Сообщения: 2567
ОС: Debian

FTP: сервер с разделением доступа по пользователю/группе

Сообщение IMB »

Доброго дня!
Для группы разработчиков надо организовать FTP-сервер, предполагаемая структура следующая:

Код: Выделить всё

/
    public/
        Project1/
        Project2/
    Project1/
    Project2/
    User1/
    User2/

Назначение директорий и права доступа:
public - общедоступные файлы, например SDK или открытая документация, с разделением по проектам, доступ на запись разработчикам или руководителям проектов, остальным чтение
ProjectX - файлы специфичные для проекта, доступ только участникам проекта
UserX - файлы конкретного разработчика, доступ только ему
Анонимные пользователи не должны выходить за пределы public, что легко достигается средствами chroot, авторизованные пользователи в иделе дожны видеть только директории в которые у них есть доступ, что не обязательно, но доступ должен быть только в определённые.
Раньше я использовал vsftpd и по большей части он меня устраивает, но к сожалению, насколько мне извесно, я не могу его средствами организовать описанную выше схему. От сервера также ожидается поддержка виртуальных пользователей и SSL.
Можете подсказать сервер который бы позволил организовать такую схему?
Спасибо.

UPD: На первый взгляд большей части условий удовлетворяей ProFTPD.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение drBatty »

IMB
разве обычная UNIXlike система прав этого не обеспечивает? Каждый пользователь (с привилегиями), входит в группу(ы). Например у public права 0775 и группа dev. Потому только хозяин, и юзеры, которые входят в dev имеют право читать и писать в этот каталог. В эту группу надо включить разработчиков и руководителей.
IMB писал(а):
26.11.2012 22:43
Анонимные пользователи не должны выходить за пределы public, что легко достигается средствами chroot

не обязательно. Права могут быть XXX0, и тогда анонимные юзеры не смогут эти файлы читать и писать. Зачем вы всё усложняете? В public (где анонам можно) права на каталоги можно сделать XXX5, тогда будет RO для них.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение IMB »

Несомненно обеспечивает, но, как правило, вся работа с FTP производится с правами демона, а там раскидать права по группам/пользователям не возможно, так как пользователь и группа для файловой системы одна, например ftp. Но ftp-сервер может может встроенными мехаизмами обеспечивать необходимое разделение.
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение pelmen »

IMB писал(а):
27.11.2012 10:37
Несомненно обеспечивает, но, как правило, вся работа с FTP производится с правами демона, а там раскидать права по группам/пользователям не возможно, так как пользователь и группа для файловой системы одна, например ftp
С этим не соглашусь. Логин производится средствами pam, соответственно, пользователь в системе уже считается не как ftp, а как user этой системы. И права можно давать этому userу, и доступ к файлам/каталогам распределять относительно этого userа, и группы, в которую этот user входит. Но для этого придётся отказаться от виртуальных пользователей. Либо назначать им соответствующие UID/GID, если механизм хранения виртуальных пользователей для ftp-демона это позволяет.
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение IMB »

Это при условии, что Вы используете системных пользователей, но я то говорю, и указал на это в самом вопросе, о виртуальных, о них знает только сервер.

P.S. Что-то обсуждение скатывается не много не в то направление.
Спасибо сказали:
pelmen
Сообщения: 1268
ОС: debian

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение pelmen »

В правильное направление скатывается обсуждение. Мы приходим к тому, что разграничение прав доступа к каталогам (как в вашей схеме) возможно только средствами разграничения прав файловой системы относительно UID/GID.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение drBatty »

IMB писал(а):
27.11.2012 10:37
Несомненно обеспечивает, но, как правило, вся работа с FTP производится с правами демона, а там раскидать права по группам/пользователям не возможно, так как пользователь и группа для файловой системы одна, например ftp. Но ftp-сервер может может встроенными мехаизмами обеспечивать необходимое разделение.

proftpd демон запускает другой процесс уже с правами пользователя. И совсем не обязательно, что это пользователь ftp. потому разрулить права не только можно, но даже очень просто.

IMB писал(а):
27.11.2012 12:21
Это при условии, что Вы используете системных пользователей, но я то говорю, и указал на это в самом вопросе, о виртуальных, о них знает только сервер.

виртуальные пользователи - всего лишь надстройка. Вы можете сделать системного пользователя administrator, и под ним множество виртуальных пользователей с разными правами. Чем вас не устраивает такой вариант?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
IMB
Сообщения: 2567
ОС: Debian

Re: FTP: сервер с разделением доступа по пользователю/группе

Сообщение IMB »

Спасибо, я ещё раз всё обдумаю.
Спасибо сказали: