Jak zrobić php+mod_fcgid+suexec ?

Patryk Szczygłowski patryk w patryk.net
Nie, 24 Paź 2010, 17:33:19 CEST


Cześć,

potrzebuję zrobić instalację Apache z rozdzieleniem procesów PHP na 
użytkowników, którzy będą mieć swoje sajty odpalane na własnych userach, 
a nie "http". Wiadomo czemu: żeby ograniczyć skutki włamów i żeby nie 
wyjaśniać klientom zawiłości chmod.

Jednakże mam problem z suexec.

Ale po kolei:
Apache 2.2.16 z paczek
PHP 5.3.3 z paczek
mod_suexec 2.2.16 z paczek
mod_fcgid 2.3.5 ze speca

/etc/httpd/conf.d/71_fcgid-php.conf

<IfModule mod_fcgid.c>
     <Files *.php>
         Options +ExecCGI
         AddHandler fcgid-script .php
         #FcgidWrapper /home/services/httpd/cgi-bin/php.fcgi .php
     </Files>
</IfModule>

/etc/httpd/vhosts.d/naboo.patryk.net.conf

<VirtualHost *:80>
     ServerName naboo.patryk.net
     SuexecUserGroup patryk users
     FcgidWrapper /home/services/httpd/cgi-bin/patryk/php.fcgi
</VirtualHost>

/home/services/httpd/cgi-bin/patryk/php.fcgi jest symlinkiem na 
/usr/bin/php.fcgi

# suexec -V
  -D AP_DOC_ROOT="/home/services/httpd"
  -D AP_GID_MIN=500
  -D AP_HTTPD_USER="http"
  -D AP_LOG_EXEC="/var/log/httpd/suexec_log"
  -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
  -D AP_SUEXEC_UMASK=077
  -D AP_UID_MIN=500
  -D AP_USERDIR_SUFFIX="public_html"

# ls -lah /home/services/httpd/cgi-bin/patryk/
total 12K
drwxr-xr-x 2 patryk users 4.0K Oct 24 17:18 .
drwxr-xr-x 3 root   root  4.0K Oct 24 17:19 ..
lrwxrwxrwx 1 root   root    17 Oct 24 17:15 php.fcgi -> /usr/bin/php.fcgi

# ls -lah /usr/sbin/suexec
-rwsr-xr-x 1 root root 24K Oct 23 23:04 /usr/sbin/suexec

I teraz gdy w takiej konfiguracji próbuję wczytać plik php, w suexec_log 
ląduje coś takiego:

[2010-10-24 17:29:00]: uid: (1000/patryk) gid: (1000/users) cmd: php.fcgi
[2010-10-24 17:29:00]: failed to setgid (1000: php.fcgi)

# id patryk
uid=1000(patryk) gid=1000(users) groups=1000(users),4(adm),10(wheel)

# id http
uid=51(http) gid=51(http) groups=51(http),1000(users)

Jakieś pomysły, a może ktoś ma działającą konfigurację i nie miałby nic 
przeciw podzieleniu się nią?

Dzięki!

-- 
Patryk Szczygłowski
JID/mail: patryk w patryk.net


Więcej informacji o liście dyskusyjnej pld-users-pl