Peter Pentchev пишет: > On Thu, Aug 20, 2009 at 06:33:47AM +0800, Денис wrote: >> Иван Лох пишет: >>> On Thu, Aug 20, 2009 at 04:13:16AM +0800, Денис wrote: >>>> заливать свои сайты пользователи будут через WebDAV скорее всего, ну >>>> может быть ещё через ftp. список имён-паролей тоже будет лежать у них в >>>> директории >>>> >>>> Так же у пользователей должна быть возможность заливать и запускать >>>> скрипты и прочую муру. >>> ^^^^^^^^ >>>> принадлежать все страницы будут пользователю типа www-data, видимо >>>> >>>> вопрос: как по debian way красиво разграничить этим пользователям доступ >>>> чтобы они друг-другу скриптами странички не портили? (да саму систему от >>>> этого тоже бы желательно защитить, если это возможно, конечно) >>> Со скриптами IMHO, никак. Кто помешает скрипту убить _свой_ процесс или >>> удалить _свой_ файл? >> Действительно, согласен, будем заводить юзеров > > Юзеров можно завести заведомо и без описания их всех в /etc/passwd. > Одно возможное решение: > - PostgreSQL база данных
В чём её выгода супротив /etc/passwd? > - libnss-pgsql2 чтоб "getent passwd" / getpwnam() и т.д. работали > - libpam-pgsql чтоб юзеры могут пользовать FTP и SSH > - отдельные user ID's для разных акаунтов (более чем один username > per account, может с разными home directory и shell, но один user ID) > - все юзеры - в одной группе, скажем, hosting > - все home directories - собственость юзера и той группы > - все home directories - с правами 701, чтоб никто не смог щупать > чужих файлов > - либо готовыми средствами, либо собственноручно создаными программами > создать chroot-окружение для разных акаунтов; bind mount и > recursive bind mount - полезние штуки; awk -F: '$1 < 1000' /etc/passwd > так же. > - забыть о mod_php; завести libapache2-mod-suphp >= 0.7.1 для поддержки > chroot-а и т.д. Кроме ПХП есть ещё другие языки. я хотел дать пользователям всё что есть, и питон и перл и разный прочий руби - пускай пользуются, мне не жалко. > > Отладка libnss-pgsql2 может быть несколько досадной - nscd глючил > изрядно и в etch, и в ранных периодов testing-что-попозже-стал-lenny, > а без nscd база сорвется за минуту (while true { getent passwd }). > Но однажды отладил, потом проблем нету. > > Отладка libpam-pgsql - попроще; нужно только чтобы догадаться, что > для важных услуг (FTP, SSH) нужно вообще удалить common-auth и > common-account из /etc/pam.d/*, далее просто. > > Я теперь в процессе финального сглажения нескольких патчов, которые > добавляют к Apache директиву SuexecChrootDir так чтобы mod_cgi, mod_cgid > и libapache2-mod-fcgid ее использовали, и учут этих модулей чтобы > подчинялись RLimit*. Уже используем на нашем хостинге в течение месяцев > без проблем. Не более чем через неделю я этих патчов опубликую. Когда оно ещё в дебиан попадёт... ) Неужели окупается допиливание апача при том что такого рода хостинг совсем уже копейки стоит? > > О WebDAV не знаю, никогда не пробовал, кроме через mod_dav_svn :) А я попробовал - не требует настроек совсем. Просто файл с паролями как для запароливания директорий подсовываешь ему и всё сразу работает. Файлы ложатся от имени веб-сервера. По моему, удобнее фтп для т.н. "простых юзеров". Поддержка в виндах давно уже встроена и работает лучше фтп мне кажется. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org