Frage zu suExec und Posix ACLs

Apache, Lighttpd, nginx, Cherokee
tiberian
Posts: 61
Joined: 2006-04-14 01:45

Frage zu suExec und Posix ACLs

Post by tiberian » 2009-03-06 21:28

Hallo,

ich bin gerade dabei mein kleines, privates Apache System neu zu
organisieren. Dabei sollen ein paar neue User auf das System Einzug
halten. Das Ziel ist das System mit suExec und fcgid zu erstellen um ein
bisschen in die Sicherheit zu investieren.
Das ganze funktioniert auch soweit, aber da ich auf dem gesamten System
Filesystem ACLs einsetze mag mich suExec nicht besonders gerne :)
Das Problem ist, das Verzeichnis und der FCGI Wrapper gehören dem User
root und dem jeweiligen User wird nur mittels einer ACL erlaubt das
Script auszuführen (--x). Bei dieser Konstellation beschwert sich suExec
dass das File und Verzeichnis nicht dem User gehören und verweigert
sämtliche Arbeit:

target uid/gid (1234/5678) mismatch with directory (0/0) or program
(1234/5678)
target uid/gid (1234/5678) mismatch with directory (1234/5678) or
program (0/0)

Nach einigem googlen und dem durchsuchen der Apache Mailinglisten bin
ich darauf gestossen, dass dies bereits mal als Bug bei Apache 1.3
gemeldet wurde und dann wohl in mod_cgi bzw suExec gefixt wurde. Siehe
https://issues.apache.org/bugzilla/show ... i?id=17897
Deshalb meine Frage, warum prüft suExec hier nicht auf die Filesystem
ACLs obwohl diese ja in Ordnung sind, bzw. dies standardkonform ist ?
Und falls jemand schon mal genau das gleiche Problem hatte, wie hat er
dies gelöst ?

Viele Grüße
Tiberian

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Frage zu suExec und Posix ACLs

Post by Roger Wilco » 2009-03-08 16:24


icebreaker
Posts: 33
Joined: 2006-05-13 19:02

Re: Frage zu suExec und Posix ACLs

Post by icebreaker » 2009-05-11 01:04

Ich hab zB meine Benutzer unter /srv/accountXYZ und die FCGI-Starter unter /srv/php5-starter/accountXZY/... eben getrennt. Das Verzeichnis mit dem Starter gehört dem Benutzer und hat das immutable-Bit gesetzt. Dies sollte ja reichen. Man könnte auch die starter in die Benutzerverzeichnisse legen ( damit alles schön in einem Verzeichnis liegt ), jedoch erlaube ich den Benutzern nur Zugriff auf die Verzeichnisse wo vhosts und logs liegen mittels FTP.

Ich benutze lediglich ACLs um den Indianer den Lesezugriff auf vhost-Dateien zu ermöglichen.

Würde mich über dein Konzept freuen :)

mfG
Ice

tiberian
Posts: 61
Joined: 2006-04-14 01:45

Re: Frage zu suExec und Posix ACLs

Post by tiberian » 2009-05-11 21:02

Hallo IceBreaker,

werde ich gerne machen, nur die nächsten Tage is bei mir ziemlich voll alles. Ich hoffe Du kannst Dich noch bis zum Wochenende gedulden :)

Grüße
Tiberian

tiberian
Posts: 61
Joined: 2006-04-14 01:45

Re: Frage zu suExec und Posix ACLs

Post by tiberian » 2009-05-20 19:43

Hallo IceBreaker,

sry für die Verspätung. Also bei mir sieht das so aus:

- Die Spaces liegen alle in /home/<username>. Dieses Verz. gehört dem User und per ACL hängt der Apache noch mit --x drin
- darunter gibt es versch. Verzeichnisse bis hin zur Subdomain (z.B. domain.tld/www/). Diese gehören nicht dem user, da er hier auch keine schreibenden Zugriff braucht. Der User und Apache sind aber per ACL (r-x bzw --x) berechtigt.
- Im eigentlichen Space liegen auch die PHP Configs/Wrapperscripte sowie eben alle anderen Dinge die ein Webspace so braucht. Ich konnte hier alles per ACL regeln bis auf die Verzeichnisse wo die Wrapper Scripte direkt drinliegen. Hier musste ich eben aus o.g. Problem auf ACLs verzichten und habe eben wie Du das immutable-Bit gesetzt.
- Die Session/Upload-tmp Geschichten von PHP liegen aber außerhalb des Homes, da diese Partition als noexec,nosuid gemountet ist. Auch via PHP usw. generierte Mails werden durch ein Wrapper Script abgefangen und in diesem tmp Verzeichnis zwischengespeichert für evtl. Abuse Reports usw.

Vorteile an der Sache sind eben, dass ich mit dem Löschen des Userhomes fast alle Daten gen Nirvana schiebe. Zudem macht es für den Kunden das Management einfacher, da er pro Vhost/Subdomain eben voll flexibel die Config anpassen kann.

Ich hoffe das hat deine Fragen beantwortet. Falls nicht, ich freue mich immer mit anderen Webhostern über solche Konzepte zu reden (gerne auch außerhalb des Forums), da man immer etwas verbessern kann ;-)

Viele Grüße
Tiberian