shared hosting - разграничение прав

Linux, безопасность, сети и все что с этим связано
Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

shared hosting - разграничение прав

Сообщение tes+or »

проблема выглядит неразрешимой..

мы имеем множество юзерских дир, где лежат htdocs с разрешенными на выполнение php скриптами, и это как минимум.

каждый юзер имеет доступ только к своей дире, к другим он не имеет доступа даже на чтение - это выполнимо.

но! апач должен иметь доступ ко всем файлам как минимум на чтение, а обычно на выполнение и в отдельных случаях на запись.

что это значит. это значит что установив у себя вебшелл, или хотябы даже сделав в пхп скрипте fopen(../../sosed/htdocs/mysql_conf.php) юзер тырит у соседа все что угодно, в т.ч. пассы к мускулу, а это уже открывает пути для дальнейших оч серьезных злодейств.

единственный путь этого избежать, как мне видится, это сделать так, чтобы в зависимости от того, с каким vhostом работает апач, он принимал права соотвествующего юзера и от них исполнял этот скрипт. я был бы очень счастлив если бы это было возможно, поскольку не помогает даже запуск апача каждым из юзеров, т.е. адресс и порт один, а апачей много.

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

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

[22:10:37] <endless> А, ещё uid генерь.
[22:10:46] <tes> а?
[22:11:01] <endless> Типа 8 символов из [a-zA-Z] и ещё 4 из [0-9[
[22:11:14] <endless> И запрети юзерам говорить это друг другу.
[22:11:29] <tes> и что это будет?
[22:11:43] <endless> Т. е. чтобы юзердира была /home/OeaOeuZLO6666/
[22:11:50] <tes> о!!!
[22:11:55] <tes> да!
будут варианты поостроумнее?

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

может есть какой-то модуль для апача, который разрешает доступ только к определенной части ФС, в зависимости от того, из какой части ФС был запущен скрипт?

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

уже нашел. есть патч для апатча, называется mpm-peruser, он накладывается автоматом в моей генте по USE флагу одноименному. компилим с ним, конфигурим и апач форкаецца под нужным юзером в зависимости от vhosta, красота короче.

но он нифига не супортится, считается нестабильным и не готов для продакшна, по словам что авторов, что дистрибутивщиков.. но у меня работает.. тьфу-тьфу.

хм.. как бы научится и сделать этот патч лучше? вседь навернется же и буду я потом волосы на всех местах рвать.. вот буду обновлять апач, а он ладно еще если не скомпилится, а если скомпилится, старые бинари удалятся а новые крэшнутся? вот что я делать буду?

Аватара пользователя
bobrik
Неотъемлемая часть форума
Сообщения: 313
Зарегистрирован: 17 авг 2005, 12:42
Откуда: Витебск
Контактная информация:

Сообщение bobrik »

Не думаю, что будут крешится, если апдейты не сильно мажорные
http://bobrik.name - я не вар'ят

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

One way to use the suEXEC wrapper is through the SuexecUserGroup directive in VirtualHost definitions. By setting this directive to values different from the main server user ID, all requests for CGI resources will be executed as the User and Group defined for that <VirtualHost>. If this directive is not specified for a <VirtualHost> then the main server userid is assumed.

думаю стоит попробывать. покрайней мере это не костыль.

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

нет, он работает только с CGI...

Аватара пользователя
Victor Gr.
Неотъемлемая часть форума
Сообщения: 891
Зарегистрирован: 13 авг 2004, 15:39
Откуда: Минск
Контактная информация:

Сообщение Victor Gr. »


Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

все это говорит о том, что не о чем не говорит. буду юзать то что работает и ждать лучших времен. если кто что узнает - кидайте сюда.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

блин.
это же элементарно делается ;)
apt-get install libapache2-mod-suphp
adduser www-data hostinguser1
adduser www-data hostinguser2
adduser www-data hostinguser3
после этого можно ставить на файлы 640 и 750 - на каталоге ;)
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

так это же только пхп, а люди захотят кто перл, кто питон, кто яву может даже.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

tes+or, а все кроме php в счастью только посредством cgi либо вообще само по себе... Это только php такое проблемное дерьмо.
PS: варианты экзотики типа mod_ruby, mod_perl, mod_python не рассматриваю, ибо в реальной жизни не надо особо ИМХО. А клиентам оплачивающим поцелуи в жопу по выгодному курсу можно сделать и особый ,кастомный сетап, вплоть до отельного suid'ного веб-сервера, не говоря о тривиальный fastcgi.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
tes+or
Неотъемлемая часть форума
Сообщения: 535
Зарегистрирован: 16 дек 2004, 17:47
Откуда: minsk
Контактная информация:

Сообщение tes+or »

по порядку:
1.то что оно CGI как-то освобождает его от того, что оно выполняется от имени апача?
2.само по себе это как? как можно связать итерпретатор с серваком еще, кроме как цги или модуль на подобие mod_perl?
3.суидный вебсервер это как? что-то знакомое, может спать хочу и не помню
4.а с fastcgi вообще не сталкивался.

мдя.. что-то пробелы у меня.

Аватара пользователя
bobrik
Неотъемлемая часть форума
Сообщения: 313
Зарегистрирован: 17 авг 2005, 12:42
Откуда: Витебск
Контактная информация:

Сообщение bobrik »

Llama, ага, только вот где тут решение? если все юзеры www-data могут читать у друг друга конфиги?!
http://bobrik.name - я не вар'ят

Аватара пользователя
nab
Фанатеющий
Сообщения: 159
Зарегистрирован: 07 май 2004, 21:42
Откуда: Сталіца

Сообщение nab »

1. http://httpd.apache.org/docs/1.3/suexec.html

2. Само приложение содержит в себе сервер. Соответственно, отдельный веб-сервер уже не нужен. Например, томкэт может работать как без апача так и за ним. Или посмотри доки к webpy.

3. Тож хочу услышать, как это звучит в понимании Llama

4. http://www.fastcgi.com/
Изображение

Ответить