From: Headlong John <johnheadlong@nightmail.ru> To: community@lists.altlinux.org Subject: [Comm] Question on FTP Date: Fri, 01 Sep 2006 13:01:57 +0400 Message-ID: <1157101317.3285.denwebmail-1@johnheadlong@nightmail.ru> (raw) Здравствуйте. У меня проблема возникла, не могу решить, не знаю, к кому обратиться и где посмотреть информацию. Направьте меня, пожалуйста. Кратко опишу проблему. У меня сервер под Линуксом для джава-разработок, дистрибутив ALT Master 2.4. Так вот, я хочу обеспечить разработчикам возможность самим деплоить приложения на него не обладая при этом ни правами root'а ОС, ни правами администратора сервера приложений (дает возможность, кроме деплоймента, конфигурировать сервер приложений через веб или утилитами командной строки). Для этого решил использовать возможность автоматического деплоймента, когда собранные модули и приложения просто выкладываются в определенный каталог. Решил использовать для этого FTP, чтобы не привязываться к файловым службам, специфическим для ОС (nfs или smb). При этом желательно сделать так, чтобы можно было ограничить возможность перемещения пользователей FTP по файловой системе определенными участками, а также сделать так, чтобы можно было права на проекты раздавать. Решил использовать vsftpd из ALT Master 2.4. В результате не могу добиться того, что мне нужно. Сервер приложений установлен в /opt/SUNWappserver (это Sun Java System Application Server 8.2). Сервер приложений поддерживает понятие доменов, каждый домен, грубо говоря, - это совокупность настроек и продеплоенных приложений. Каждый домен расположен в своем подкаталоге каталога /opt/SUNWappserver/domains. Например, домен по умолчанию - в /opt/SUNWappserver/domains/domain1. Для автоматического деплоймента достаточно записать модуль или приложение в подкаталог autodeploy, можно в распакованном виде (то есть в подкаталог проекта в каталоге autodeploy нужного домена), что удобно с точки зрения обновления приложения и управления доступом разных людей к разным проектам. То есть в итоге должно получиться примерно следующее: Домен domain1: /opt/SUNWappserver/domains/domain1/autodeploy Проекты в домене domain1: каталог project1a - доступ у user1, user2 каталог project1b - доступ у user2, user3 Домен domain2: /opt/SUNWappserver/domains/domain2/autodeploy каталог project2a - доступ у user1, user3 каталог project2b - доступ у user4 Скажем, пользователь подключается по FTP, попадает в некий виртуальный корневой каталог. Там, скажем, каталоги, соответствующие доменам сервера приложений, а в них - каталоги проектов этого домена. Он может ходить только по тем из этих каталогов и делать с ними только то, что разрешено (на уровне файловой системы). При этом никаких других частей файловой системы не должно быть доступно. Так вот. Если использовать доступ под реальными пользователями, то получается, что они могут гулять по всей файловой системе, зато можно сделать симлинки на нужные каталоги из домашнего каталога. Если chroot'ить их, то они будут ограничены своим домашним каталогом, а в нужные для деплоймента каталоги не попадут никогда, и ALT Master не дает создавать хардлинки на каталоги (у меня файловая система Ext2). chroot'ить их в /opt/SUNWappserver/domains, естественно, я тоже не хочу, потому что мало ли, может нужно будет предоставить по FTP доступ к какому-нибудь каталогу за пределами ветви /opt/SUNWappserver/domains и чего? Если использовать виртуальных пользователей, то ситуация аналогичная, но еще ухудшается тем, что доступ к файловой системе все виртуальные пользователи получают под одним и тем же пользователем ОС, что исключает возможность ограничения доступа пользователей к проектам друг друга. Что я хочу. Я хочу собрать виртуальное дерево FTP-сервера на основе реальных каталогов, произвольно разбросанных по файловой системе, и управлять доступом к нему для пользователей. Я хочу, чтобы структура дерева каталогов FTP-сервера не была жестко привязана к структуре каталогов на диске. Подскажите, пожалуйста, куда смотреть, где читать, потому что документация по vsftpd довольно скудная, тем более нет документации концептуального характера. Спасибо заранее.
next reply other threads:[~2006-09-01 9:01 UTC|newest] Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top 2006-09-01 9:01 Headlong John [this message] 2006-09-11 9:55 ` Fr. Br. George 2006-09-12 7:50 ` Headlong John 2006-09-12 13:49 ` Fr. Br. George 2006-09-13 7:41 ` Headlong John 2006-09-14 14:10 ` Fr. Br. George 2006-09-15 14:56 ` Headlong John 2006-09-15 15:05 ` Serge Polkovnikov 2006-09-15 17:55 ` Maxim Tyurin 2006-09-16 8:54 ` Michael Shigorin 2006-09-18 10:21 ` Fr. Br. George 2006-09-17 18:11 ` Alexandr A. Alexandrov 2006-09-18 10:09 ` Fr. Br. George 2006-09-18 11:38 ` Michael Shigorin 2006-09-18 12:17 ` Fr. Br. George 2006-09-18 13:46 ` Maxim Tyurin 2006-09-18 16:44 ` Michael Shigorin 2006-09-20 11:31 ` Fr. Br. George 2006-09-20 17:53 ` Michael Shigorin 2006-09-22 12:50 ` Fr. Br. George 2006-09-22 19:36 ` Michael Shigorin 2006-09-18 10:14 ` Fr. Br. George 2006-09-14 14:18 ` Headlong John
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=1157101317.3285.denwebmail-1@johnheadlong@nightmail.ru \ --to=johnheadlong@nightmail.ru \ --cc=community@lists.altlinux.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git