1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Apache, Lighttpd, nginx, Cherokee
Post Reply
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Hallo zusammen,

Ich habe einen älteren 1&1 Server mit Suse Linux 8.1 und Apache Version 1.3.26 und habe folgendes Problem.

Der Dateiupload per PHP funktioniert zwar, allerdings werden die Datein mit falschem User und Rechten angelegt.

Auch der Versuch diese per php Befehel chmod zu verändern schlägt fehl, was ja kein wunder ist wenn die datei wwwrun gehört.

Suche jetzt schon länger nach einer Lösung, soweit ich das bis her sehe funktioniert nur eine Version richtig und zufriedenstellend. Das ist wenn man PHP nicht als modul sondern als CGI Version laufen läßt.

Nun meine Frage, kann mir jemand einen Tip geben wo ich ein Howto, Anleitung oder Infos finde, wie ich die PHP Version auf dem Server ändern kann. Das bisherige googeln brachte noch nicht den gewünschten Erfolg.

Gruß
Markus
Last edited by acepilot on 2005-07-28 15:45, edited 1 time in total.
xabbu
Posts: 13
Joined: 2005-02-22 16:45
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by xabbu »

Hi Acepilot,

entweder Du installierst es über Yast (musst halt schauen, welche Version da zur Verfügung steht!) oder Du gehst auf http://www.php.net und lädst Dir dort die aktuelle Version runter und installierst sie:

Code: Select all

./configure --gewünschte Optionen
make
make install
rcapache restart
Du kannst Dir ja mit phpinfo() anschauen, wie Deine aktuelle Konfiguration aussieht und die neue dann mit den gleichen Optionen konfigurieren.

Gruß
Xabbu
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Mmh, ja ne ist schon klar. Danke für den Tip mit phpinfo, das hat mir schon mal gezeigt, das eigentlich auch die CGI Version von PHP auf der Machine sein sollte. Leider habe ich diese noch nicht gefunden.

Will nämlich suPHP ans laufen bekommen, und um das compilieren zu können braucht man ja den Ort der CGI PHP Datei, wenns mich nicht ganz täuscht. Oder bin ich dort schon im unrecht?

Code: Select all

'./configure' '--prefix=/usr/share' '--datadir=/usr/share/php' '--bindir=/usr/bin' '--libdir=/usr/share' '--includedir=/usr/include' '--with-_lib=lib' '--with-config-file-path=/etc' '--with-exec-dir=/usr/lib/php/bin' '--disable-debug' '--enable-bcmath' '--enable-calendar' '--enable-ctype' '--enable-dbase' '--enable-discard-path' '--enable-exif' '--enable-filepro' '--enable-force-cgi-redirect' '--enable-ftp' '--enable-gd-imgstrttf' '--enable-gd-native-ttf' '--enable-inline-optimization' '--enable-magic-quotes' '--enable-mbstr-enc-trans' '--enable-mbstring' '--enable-memory-limit' '--enable-safe-mode' '--enable-shmop' '--enable-sigchild' '--enable-sysvsem' '--enable-sysvshm' '--enable-track-vars' '--enable-trans-sid' '--enable-versioning' '--enable-wddx' '--enable-yp' '--with-bz2' '--with-dom=/usr/include/libxml2' '--with-ftp' '--with-gdbm' '--with-gettext' '--with-gmp' '--with-imap=yes' '--with-iodbc' '--with-jpeg-dir=/usr' '--with-ldap=yes' '--with-mcal=/usr' '--with-mcrypt' '--with-mysql=/usr' '--with-ndbm' '--with-pgsql=/usr' '--with-png-dir=/usr' '--with-qtdom=/usr/lib/qt2' '--with-snmp' '--with-t1lib' '--with-tiff-dir=/usr' '--with-ttf' '--with-freetype-dir=yes' '--with-xml' '--with-xpm-dir=/usr/X11R6' '--with-zlib=yes' '--with-gd=shared' '--with-openssl' '--with-curl' '--with-swf=./dist/' '--with-imap-ssl' '--enable-xslt' '--with-xslt-sablot' '--with-mm' '--with-apxs=/usr/sbin/apxs' 'i586-suse-linux'
Weiter habe die Anleitung von http://www.debianhowto.de vor mir liegen. Aber irgendwie werd ich daraus nicht schlau, das kompilieren von suPHP will mit den angebenen Optionen nicht.

Code: Select all

./configure --with-min-uid=30 --with-min-gid=30 --with-apache-user=wwwrun --with-php=/usr/lib/php --with-logfile=/var/log/suphp.log --with-apxs=/usr/bin
Ok, denke das liegt daran das die Option --with-php auf ein Verzeichniss zeigt wo nichts ist. Finde aber die cgi Version von PHP sonst nicht auf der Maschine.

Auf der anderen Seite überlege ich, ob ich den Server mit einer aktuellen Linux Version reinitialisieren lassen soll. Währe dann ja auch schon Apache2 drauf.

Mmh, jemand noch Tips?
Last edited by acepilot on 2005-07-28 16:09, edited 1 time in total.
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche R

Post by Roger Wilco »

Acepilot wrote:Der Dateiupload per PHP funktioniert zwar, allerdings werden die Datein mit falschem User und Rechten angelegt.
Nein. Die Dateien werden mit den richtigen Permissions und Besitzern angelegt, weil PHP vermutlich als Modul in deinem Apache unter dessen Benutzer (wwwrun) läuft.
Wenn du das ändern willst, musst du die Konfiguration dahingehend ändern, dass entweder SuExec oder SuPHP genutzt werden und die Skripte somit als der jeweilige Benutzer laufen.

Acepilot wrote:Suche jetzt schon länger nach einer Lösung, soweit ich das bis her sehe funktioniert nur eine Version richtig und zufriedenstellend. Das ist wenn man PHP nicht als modul sondern als CGI Version laufen läßt.
http://www.debianhowto.de/de/howtos/sar ... 2_php-fcgi
Die paar Sachen, die Apache 2.x und Debian-spezifisch sind kannst du ja schnell ändern.
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Nein. Die Dateien werden mit den richtigen Permissions und Besitzern angelegt, weil PHP vermutlich als Modul in deinem Apache unter dessen Benutzer (wwwrun) läuft.
Ja du hast schon recht, war auch eher so gemeint, das für meinen Zweck die Dateien mit falschen Rechten und Besitzer angelegt werden. Das dies am PHP als Modul liegt ist schon klar.

Leider bin ich gestern nicht sehr viel weiter gekommen. Werde aber heute Nachmittag mal versuchen PHP mit suPHP ans laufen zu bekommen. Falls noch fragen meiner Seits bestehen melde ich mich dann noch. :wink:
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

So bin jetzt weider da heim und an dem Problem am arbeiten. Nach Anleitung suPHP in der Version 0.6.0 Runtergeladen und mit folgendendem Befehl konfiguriert.

Code: Select all

./configure --with-min-uid=30 --with-min-gid=30 --with-apache-user=wwwrun --with-php=/usr/bin/php --with-logfile=/var/log/apache/suphp.log --with-apxs=/usr/bin/apxs
Bis dahin lief auch für mich augenscheinlich alles ohne Fehler durch. Habe mal den Output in ein File gepackt, sonst wirds hier zu unübersichtlich.
configure file

Nur das make bereitet mir sorgen, läuft nämlich nicht fehlerfrei durch. Leider habe ich mit compilieren auch noch nicht die super erfahrung, aber vielleicht hat ja jemand von euch einen Tipp. Auch bei diesem Problem der Output von make als Datei.
make file

Gruß
Markus
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Hab meinen Fehler gefunden, der Pfad --with-apxs=/usr/bin/apxs war falsch.

Nun habe ich alles nach dem Howto von http://www.debianhowto.de/howto-archiv/de/suphp/ eingebunden aber es funzt nicht. In den ganzen VHost bietet er mir die PHP Dateien nur als Downlaod an.

In der httpd.conf habe ich folgendes geändert bzw. hinzugefügt

Code: Select all

LoadModule suphp_module       /usr/lib/apache/mod_suphp.so
AddModule mod_suphp.c

suPHP_Engine on
php_admin_flag engine off
AddType application/x-httpd-php .php
AddHandler x-httpd-php .php
Natürlich habe ich alle AddHandler von mod_php auskommentiert. Apache startet auch ohne eine Fehlermeldung. Weiß langsam nicht mehr weiter, auch suchen im Board brachte bisher keinen Erfolg.
creek
Posts: 76
Joined: 2003-07-29 08:52
Location: Stuttgart
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by creek »

bei suPHP 0.6 gibt es eine Config Datei die sich normalerweie in /etc befinden sollte. schau einfach mal in die README von suPHP.
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Jo, sorry das habe ich gelesen. Trotzdem kein erfolg auch kein Logfile. Die suphp.conf sieht bei mir so aus. Muß ich irgendwo noch angeben, das er diese Datei lesen soll ???

Code: Select all

[global]
;Path to logfile
logfile=/var/log/suphp.log

;Loglevel
loglevel=info

;User Apache is running as
webserver_user=wwwrun

;Path all scripts have to be in
docroot=/home/www

; Security options
allow_file_group_writeable=false
allow_file_others_writeable=false
allow_directory_group_writeable=false
allow_directory_others_writeable=false

;Check wheter script is within DOCUMENT_ROOT
check_vhost_docroot=true

;Send minor error messages to browser
errors_to_browser=true

;PATH environment variable
env_path=/bin:/usr/bin

;Umask to set, specify in octal notation
umask=0077

; Minimum UID
min_uid=100

; Minimum GID
min_gid=100


[handlers]
;Handler for php-scripts
x-httpd-php=php:/usr/bin/php

;Handler for CGI-scripts
x-suphp-cgi=execute:!self
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by Roger Wilco »

Acepilot wrote:Jo, sorry das habe ich gelesen. Trotzdem kein erfolg auch kein Logfile. Die suphp.conf sieht bei mir so aus. Muß ich irgendwo noch angeben, das er diese Datei lesen soll ???
Nein. Du mußt aber SuPHP noch sagen, welche Dateien es parsen soll. Dafür gibt es SuPHP_AddHandler.
Und probiers in der suphp.conf bei [handlers] mal mit "application/x-httpd-php" anstatt nur "x-httpd-php".
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Mmh, wo genau muss dieser befhel hin. Habe versicht ihn direkt in der Apache configdatei einzutragen. Beim starten des Servers sagt er dann aber immer

Code: Select all

suPHP_AddHandler not allowed here   
Der nächste Versuch war direkt in der VirtualHost

Code: Select all

<Location /home/www/web5/html>
suPHP_AddHandler application/x-httpd-php
</Location>
Keine Fehlermeldung beim starten, aber PHP Dateien immer noch als Download. Weiß echt nicht mehr wodran es noch liegen könnte.
acepilot
Posts: 86
Joined: 2003-07-30 17:42
Contact:
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by acepilot »

Mmh, blicke das nicht mehr. Habe jetzt einfach mal suPHP 0.5.2 probiert, das funktioniert einwandfrei. Sehr eigenartig. Werde das mit 0.6.0 demnächst noch einmal probieren. Wenns geklappt hat, kommt ne kurze Rückmeldung.

Bis hier her, aber vielen Dank an alle die mit Tips und Rat zur seite standen. :wink:
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53
 

Re: 1&1 Root Server - PHP Upload von Dateien - Falsche Recht

Post by Roger Wilco »

Acepilot wrote:Keine Fehlermeldung beim starten, aber PHP Dateien immer noch als Download. Weiß echt nicht mehr wodran es noch liegen könnte.
Der Eintrag in der suphp.conf unter [handlers] muss exakt mit dem Eintrag in der Apache-Konfiguration übereinstimmen, also "application/x-httpd-php" anstatt nur "x-httpd-php".
Du kannst dir spasseshalber ja mal die Beispielkonfiguration des entsprechenden Gentoo Ebuilds ansehen.
Post Reply