[linux-l] FTP-User und Script ausführender User gleich

Volker Grabsch vog at notjusthosting.com
Mi Aug 31 14:18:20 CEST 2005


On Wed, Aug 31, 2005 at 10:15:10AM +0200, Manuel Tennert wrote:
> Ich habe bei mir auf dem Webserver die Möglichkeit mehrere Kunden via Confixx einzurichten. Nun ist es leider so, dass wenn ich Daten per FTP auf dem Server lege, diese einer ganz anderen Gruppe und einem ganz anderen Besitzer zugewiesen sind, als wenn ich zum Beispiel mit einem PHP-Script ein Verzeichnis erstelle.

Der Fehler liegt bei den PHP-Scripten, der FTP- und SSH-Zugang sollte
unter dem "richtigen" Owner (d.h. dem Account des Kunden) laufen. Aber die
PHP-Scripte laufen unter den Rechten des Webservers.

Das Problem hast du nur bei PHP, für alles andere (Perl-Scripte, Python-
Scripte) funktioniert ja suexec. Aber PHP im Apache ist nunmal als Modul
drin, und läuft daher auch mit dessen Rechten. Das ist nicht nur
unbequem, sondern auch sehr unsicher, weil sich die PHP-Scripte
gegenseitig in die Dateien / in den Speicher schauen können. Der
"safe mode" von php schafft da nur bedingt Abhilfe (verhindert aber
das schlimmste).

Abhilfe schafft ein anderes Modul. Mittlerweile gibt's ja "suphp".
Dieses Modul verträgt sich aber nicht so gut mit dem "normalen"
php-Modul, also müsstest du es komplett umstellen. Dir könnte dabei
übrigens Confixx in dei Quere kommen, aber das haben diese lästigen
Admin-Tools, die alles besser wissen, nunmal so an sich.

Vorsicht allerdings bei der Umstellung. Du musst die Datei-Besitzer
und -Rechte ändern, von allen php-Scripten und den von ihnen erzeugten
Dateien. Außerdem konfigurierst du "suphp" etwas anders: Du hast
in deinen VirtualHosts und deinen ".htaccess"-Dateien keine Befehle
ala "php_admin_value", sondern kannst stattdessen für jeden VirtualHost
ne eigene php.ini anlegen. Ich persönlich finde das sogar besser so,
aber es ist halt ne Datei mehr, und etwas Umstellung, und kaum eine
Howto geht darauf ein.

> Wie kann ich es nun ändern, dass die FTP-Benutzergruppe und
> FTP-Besitzer gleich dem sind, der praktisch die PHP-Scripte etc. ausführt?

Gar nicht. Du musst es andersrum machen: die PHP-Scripte müssen mit
den Rechten der FTP-Accounts laufen.

> Problem ist hierbei: es gibt wie erwähnt mehrere User, also müßte sich
> der Besitzer für den jeweiligen FTP-Login der hochgeladenen Daten
> entsprechend ändern.

Erklär das bitte mal genauer. Ich weiß nicht, was du meinst.


Viele Grüße,

	Volker

-- 
Volker Grabsch
---<<(())>>---
Administrator
NotJustHosting GbR



Mehr Informationen über die Mailingliste linux-l