suPHP und Konfigurationsoptionen

Bash, Shell, PHP, Python, Perl, CGI
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

suPHP und Konfigurationsoptionen

Post by suntzu »

Hallo zusammen,

suPHP kann ja bekanntlich keine php_admin_value-Optionen aus den vHost-Abschnitten der httpd.conf interpretieren. Die Angabe einer anderen Konfigurationsdatei per suPHP_ConfigPath, in der die speziellen Optionen (bei mir: upload_tmp_path) überschrieben werden sollen hilft leider auch überhaupt gar nicht.
[edit]
Problem ist, dass immer direkt _alle_ Optionen der "echten", d.h. für alle gültigen php.ini überschrieben werden, nicht nur die, die ich geändert haben möchte.
[/edit]

Frage also: Gibt es eine Möglichkeit, bestimmte php-Optionen pro vHost zu Ã?ndern/Ã?berschreiben bei Einsatz von suPHP?

Vielleicht bin ich auch nur einfach zu blind, so Sachen zu sehen...

Gruß,
Dominik
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP und Konfigurationsoptionen

Post by kase »

Also normalerweise benutzt suPHP immer diese php.ini, die du mit suPHP_ConfigPath angegeben hast. Somit hast du für jeden vHost eine eigene php.ini, und somit wiederrum die meisten Einstellmöglichkeiten, die man mit PHP und irgendwelchen Zusatztools irgendwie haben kann.

Schau dir mal ein phpinfo() an, dort siehst du auch, welche php.ini von PHP bzw suPHP geladen wird.
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP und Konfigurationsoptionen

Post by suntzu »

Hi,

ja ja, das ist mir klar, das mit der php.ini.
Ich möchte aber jetzt nicht für jeden vHost eine einzelne php.ini haben sondern lieber eine zentrale php.ini und nur bestimmte Einstellungen durch die benutzereigene Konfiguration überschrieben wissen. So wie halt die php_admin_value-Optionen für mod_php ;-)

Aber anscheinend geht das ja nicht... :-(

Wird also wohl doch auf eine Lösung mit einer eigenen php.ini für jede verdammte Domain und Subdomain hinauslaufen.

Gruß,
Dominik
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP und Konfigurationsoptionen

Post by kase »

Also ich weiß nicht, was so schwer dadran ist, jedem User eine eigene php.ini in sein Verzeichnis mit root:root und Read-Only zu legen, so mache ich es zumindest, da dann der User sogar seine php.ini einsehen kann, und nachschauen kann, wie was wo konfiguriert ist. Natürlich sollte die php.ini nicht im "Web"-Verzeichnis liegen, sondern in einem Verzeichnis dadrunter, was dann nur per ftpeinsehbar ist.
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP und Konfigurationsoptionen

Post by suntzu »

Hi,

ich werde es dann auch so machen, ich hatte halt nur gehofft, dass es da weniger invasive Maßnahmen gibt.

Hintergrund: Ich habe mir ein kleines "Verwaltungstool" gebastelt, mit dem ich per Web neue User, Domains, Mailfächer, Subdomains, Tarife, etc. anlegen/verwalten kann. Bisher konnte ich immer wunderbar z.B. das upload_tmp_dir für PHP in die vhost mit reinschreiben, nun muss ich für diese zwei Zeilen die komplette php.ini kopieren, die beiden Zeilen rauslöschen und entsprechend neue reinschreiben.

Geht natürlich auch, ist nicht optimal aber what shall's.

Danke trotzdem,
Dominik
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: suPHP und Konfigurationsoptionen

Post by captaincrunch »

Also ich weiß nicht, was so schwer dadran ist, jedem User eine eigene php.ini in sein Verzeichnis mit root:root und Read-Only zu legen
Hint: es gelten auch noch Verzeichnisrechte.
Sofern der User in seinem Home Schreibrechte hat (was unabdingbar ist), kann er auch Files dort löschen, die ihm gar nicht gehören, und auf die er nur Leserechte hat. Daher ist es ein einfaches, einfach ein "eigenes" File zu erstellen.

Sowas fiele dann letzten Endes unter "hausgemachte Sicherheitslücke". ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP und Konfigurationsoptionen

Post by suntzu »

Hi,

ich hatte zwar nicht vor, die php.ini in das Userverzeichnis zu packen, aber gut, dass du darauf hinweist. Besonders ist aber zu beachten, dass das nur für Dateien gilt, _nicht_ für Verzeichnisse.

Gruß,
Dominik
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: suPHP und Konfigurationsoptionen

Post by captaincrunch »

Besonders ist aber zu beachten, dass das nur für Dateien gilt, _nicht_ für Verzeichnisse.
Sofern wir immer noch vom gleichen Punkt reden, möchte ich diese Aussage anfechten. Leg mal als root im Userverzeichnis ein Dir an, setz es auf 0400, und lösch es als User, du wirst sehen, dass es noch nicht einmal (wie beim File) eine Abfrage hervorbringt.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP und Konfigurationsoptionen

Post by suntzu »

OK, du hast gewonnen. Es lag an meinem ftp-Programm, das wollte das Verzeichnis nicht löschen :-)

Ich kapituliere.

Gruß,
Dominik
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP und Konfigurationsoptionen

Post by kase »

Oha, besten Dank für diesen Hinweis. Zum Glück hat das noch keiner meiner User durchschaut.

Habe es nun so gemacht, dass ich ein Verzeichnis conf angelegt habe, dieses gehört root:root. In diesem Verzeichnis conf liegt die php.ini ebenfalls mit root:root. So wie ich das sehe, kann man nun das Verzeichnis nicht löschen, da sich darin Dateien befinden, und die php.ini kann man nicht löschen, da sie selbst, genau wie das Verzeichnis, in dem sie liegt, root:root gehört.

Ist das nun so sicher, oder ist das immer noch eine selbstgebaute Sicherheitslücke ?
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: suPHP und Konfigurationsoptionen

Post by captaincrunch »

Ein ls (auf das, sowie ins Verzeichnis) sagt hier mehr als tausend Worte. ;)
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP und Konfigurationsoptionen

Post by suntzu »

Hi,

das scheint zu funktionieren.

Gruß,
Dominik
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP und Konfigurationsoptionen

Post by kase »

Code: Select all

kasedebian:/var/www/blood# ls -al conf
total 48
drwxr-xr-x    2 root     root         4096 Feb 10 17:23 .
drwxr-xr-x    5 blood    users        4096 Feb 10 17:23 ..
-rw-r--r--    1 root     root        39274 Feb 10 17:21 php.ini
Also zumindest mit FTP bekomme ich es nun nicht mehr hin, da irgendwas zu löschen... Wäre aber über eine Bestätigung dankbar...
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: suPHP und Konfigurationsoptionen

Post by captaincrunch »

Du hast die Verzeichnisrechte vergessen (ls -ld conf), nur die zählen in diesem Fall. Normalerweise solltest du damit aber auf der sicheren Seite sein, da der User dort keine Schreibrechte hat.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP und Konfigurationsoptionen

Post by kase »

Was genau soll ich vergessen haben ?

Ich habe extra ein "ls -al conf" gemacht, damit . (aktuelles Verzeichnis: conf) und .. (das Verzeichnis eine Ebene höher, in der conf liegt: blood) mit angezeigt werden, oder was brauchst du noch zusätzlich ?

Die Ausgabe "ls -ld conf" hat keine weiterführenden Informationen, die mein geposteter Schnipsel nicht schon hätte.
captaincrunch
Userprojekt
Userprojekt
Posts: 7066
Joined: 2002-10-09 14:30
Location: Dorsten

Re: suPHP und Konfigurationsoptionen

Post by captaincrunch »

Ja, passt doch schon. ;) Ein ls -ld hätte es nur noch klarer gemacht.
DebianHowTo
echo "[q]sa[ln0=aln256%Pln256/snlbx]sb729901041524823122snlbxq"|dc