Muff's website forum
FreeBSd => WWW => Тема начата: Kostya от Июня 24, 2012, 10:18:35 pm
-
Используя Syscp.
Столкнулся с проблемой: домашняя директория виртуального юзера создаётся с стандартными правами 755, а файлы 644. Веб сервер работает от www:www, соответственно через веб-скрипты нет возможности записывать в директорию (создавать папки, изменять файлы), а хостящиеся сайты подразумевают данную возможность. Как быть ?!
-
Используйте Apache c ITK MPM, который позволяет запускать скрипты, выполняемые веб-сервером, с правами пользователя виртуального хоста, а не веб-сервера. Установить его можно из системы портов: /usr/ports/www/apache22-itk-mpm.
Соответственно, в описание виртуального хоста необходимо указывать пользователя и группу, от имени которого будут запускаться скрипты. Пользователь и группа должы существовать!
Пример записи:
<IfModule itk.c>
AssignUserID telo telo
</IfModule>
-
А вот я думал, что open_basedir отвечает за такой функционал.
Ошибаюсь, да?!
-
И всё же об этом itk: ничего, что пользователи syscp виртуальные ?!
Я именно их должен и прописывать ?!
-
Если пользователь не будет существовать, то apache "вылетит" с ошибкой. Шелл пользователям не нужно выдавать. Пример:
# pw groupadd -n wwwuser1 -g 1004
# pw useradd -n wwwuser1 -u 1004 -g wwwuser1 -c WWWUser -d /nonexistent -s /sbin/nologin
Только за UID следите. Попробуйте запустить Apache-ITK, и результаты работы смотрите в top - увидите, что процессы apache запускаются от разных пользователей.
-
Как-то тупо. Получается вся прелесть панели сводится на НЕТ. Всё равно приходится админу руками достаточно прописывать. Печально ):
-
И системные пользователи необходимы в любом случае...
-
Да, есть такое.
Как вариант - прицепить скрипт, который автоматизирует добавление аккаунта. Либо же попробуйте подружить панель с suphp.
-
Спасибо, что разъяснили. А то я оказывается многого недопонимал.
-
ммм и последний момент....я правильно вас понял, что если я буду использовать mpm-itk, то сис-ных юзеров и группы я должен заводить такие же как и виртуальные (прим.: 10010:10010)???
-
аа, туплю...Надо чтобы uid и gid были соответствующими, так?!
-
Пример я уже давал... Попробую более подробно обьяснить.
Итак, в описание виртуалхоста добавлено:
<IfModule itk.c>
AssignUserID kiselev kiselev
</IfModule>
Права на каталоги:
ls -la kiselev/
total 10
drwxr-xr-x 4 kiselev kiselev 512 22 июн 17:04 .
drwxr-xr-x 49 root wheel 1024 21 май 10:40 ..
drwxr-xr-x 5 kiselev kiselev 3584 22 июн 17:04 domain1.kiev.ua
drwxr-xr-x 5 kiselev kiselev 3584 22 июн 17:04 domain2.kiev.ua
Пользователь:
cat /etc/passwd | grep kiselev
kiselev:*:10010:10010:SysCP:/nonexistent:/sbin/nologin
Группа:
cat /etc/group | grep kiselev
kiselev:*:10010:
Как-то так...