suPHP - ein paar Fragen

Bash, Shell, PHP, Python, Perl, CGI
markusk
Posts: 140
Joined: 2003-05-04 20:14

suPHP - ein paar Fragen

Post by markusk »

Hallo
Ich habe ein paar kleine Fragen zum Einsatz von suPHP.

1. Ich benutze den Apache1.3, da gibt es keine andere Möglichkeit außer suPHP, um PHP nicht unter dem wwwrun laufen zu lassen sondern unter webX, oder?

2. Gibt es Probleme mit Confixx beim Einsatz von suPHP?

3. suPHP benötigt die CGI-Version von PHP. Ist diese langsamer als die Modul-Version?

4. Gibt es sonst noch etwas zu beachten?

Danke und Gruß
Markus
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP - ein paar Fragen

Post by kase »

1. Gibt es sicherlich, aber suPHP ist IMHO die beste, effektivste, einfachste und sicherste.

2. Ja, gibt es. Confixx läuft nicht mit suPHP bzw PHP-CGI. Allerdings kann man dies sehr einfach umgehen, indem man im Confixx v-Host mod_php aktiviert und bei den User-v-Hosts suPHP. Nachteil: Wenn User sich richtig gut auskennen, können sie bei ihrem v-Host durch htaccess sich wieder mod_php aktivieren, und suPHP (PHP-CGI) deaktivieren.

3. Es sind beide ähnlich schnell. Allerdings bietet mod_php teilweise andere Features wie php-cgi. zB kann mod_php persistente Connections zu Datenbanken, oder kann ein paar Apache-Funktionen (bsp: getallheaders() ), beides kann php-cgi nicht, dafür kann php-cgi andere Sachen, die mod_php nicht kann, wie zB Process-Controlling und Shared Memory oder Semaphoren. Sicherer ist aber PHP-CGI mit suPHP auf jeden Fall.

4. Gibt nicht wirklich viel zu beachten, da man beides sogar parallel laufen lassen kann, bzw mit Confixx sogar muss. Wichtig ist eine sehr neue suPHP Version, wenn möglich die 0.5er.
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

kase wrote:2. Ja, gibt es. Confixx läuft nicht mit suPHP bzw PHP-CGI. Allerdings kann man dies sehr einfach umgehen, indem man im Confixx v-Host mod_php aktiviert und bei den User-v-Hosts suPHP. Nachteil: Wenn User sich richtig gut auskennen, können sie bei ihrem v-Host durch htaccess sich wieder mod_php aktivieren, und suPHP (PHP-CGI) deaktivieren.
Welche Einstellungen sind da von meiner Seite aus nötig in beiden Typen von VHosts (Confixx und User) und was müsste ein User in die .htaccess schreiben, um das zu umgehen?
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP - ein paar Fragen

Post by kase »

Naja, in dem einen v-Host halt suPHP aktivieren, im anderen mod_php. Weiß jetzt den genauen Befehlstlaut nicht auswendig, aber es ist eine Zeile. Um zB suPHP zu aktivieren ist die Zeile glaube ich "suPHP_Engine on", einfach Readme lesen.

Die User müssten mit einer ReWriteRule php Dateien wieder auf mod_php umschreiben, auch hier weiß ich den genauen Befehlslaut nicht auswendig, man könnte ReWriteRule per htaccess deaktivieren, aber dann wären zB keine eigenen Fehlerseiten per htaccess mehr möglich.
flo
Posts: 2223
Joined: 2002-07-28 13:02
Location: Berlin

Re: suPHP - ein paar Fragen

Post by flo »

Hi,

ist hier eigentlich alles erklärt:

http://www.debianhowto.de/howtos/de/suphp/index.html

Grüße,

flo.
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP - ein paar Fragen

Post by kase »

Es handelt sich beim Topic Starter glaube ich um keinen Debian Server. Allerdings ist vieles vom HowTo auch auf Suse Server übertragbar, aber keinesfalls alles. Außerdem würde ich auf jeden Fall die suPHP0.5 Version nehmen.
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

kase wrote:Die User müssten mit einer ReWriteRule php Dateien wieder auf mod_php umschreiben, auch hier weiß ich den genauen Befehlslaut nicht auswendig, man könnte ReWriteRule per htaccess deaktivieren, aber dann wären zB keine eigenen Fehlerseiten per htaccess mehr möglich.
Dann ist es ja wohl ein Witz, suPHP zu installieren, wenn man es so einfach umgehen kann. Gibt es keine sicher Alternative außer den Apache2 (da läuft ja jeder VHost unter einem eigenen User)?

Gruß Markus
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP - ein paar Fragen

Post by suntzu »

Hi,

suPHP kann man _so_ nur umgehen, wenn mod_php per default an ist.

Ich hab's so:
suPHP_Engine on in der httpd.conf an, mod_php aus.
php_admin_flag engine on bei den vHosts, wo es nötig ist.
Dadurch können User das mit .htaccess Dateien nicht umgehen. Sie können zwar .php-Dateien mit RemoveHandler .php ungeparst lassen, aber mod_php zu aktivieren ist nicht möglich, zumindest nicht bei mir oder ich hab's einfach noch nicht geschafft (auf userebene).

Insgesamt also keine unsichere Lösung soweit ich das beurteilen kann.
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP - ein paar Fragen

Post by kase »

Wie mein Vorredner schon sagte, wenn man kein mod_php installiert, geht das natürlich nicht.

Wer mod_php für Confixx brauch, kA, vielleicht mal schauen, was sich aus SunTzu`s Post machen lässt, ich benutze kein Confixx ;)
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP - ein paar Fragen

Post by suntzu »

Hi,

auch mit installiertem mod_php ist es eben kein Problem solange mod_php nicht standardmäßig eingeschaltet ist sondern nur per vHost eingeschaltet wird.

Ich muss es nutzen, da ich Skripte aufrufe, die root-Rechte erfordern, das Ganze aus einem Webinterface raus. Und das mit suPHP zu realisieren ist schwierig bis unmöglich.

BTW, ich nutze auch kein Confixx.
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

Kann ein USer dann nicht mod_php über eine .htaccess aktivieren?
suntzu
Posts: 669
Joined: 2002-12-20 19:47
Location: Mönchengladbach

Re: suPHP - ein paar Fragen

Post by suntzu »

Nö. Zumindest nicht, wenn es im allowOverride nicht erlaubt ist. Wobei ich auch nicht weiß, welche Optionen dafür erlaubt sein müssen.
jamesb
Posts: 661
Joined: 2002-05-08 15:35
Location: Karlsruhe

Re: suPHP - ein paar Fragen

Post by jamesb »

SunTzu wrote:Ich muss es nutzen, da ich Skripte aufrufe, die root-Rechte erfordern, das Ganze aus einem Webinterface raus. Und das mit suPHP zu realisieren ist schwierig bis unmöglich.
Ist ganz leicht: Dem entsprechenden User exklusive Rechte nur für die Scripte geben, die als root ausgeführt werden sollen. Tipp' mal ein "man sudoers" ein ;-)

JamesB
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: suPHP - ein paar Fragen

Post by blnsnoopy26 »

JamesB wrote:
SunTzu wrote:Ich muss es nutzen, da ich Skripte aufrufe, die root-Rechte erfordern, das Ganze aus einem Webinterface raus. Und das mit suPHP zu realisieren ist schwierig bis unmöglich.
Ist ganz leicht: Dem entsprechenden User exklusive Rechte nur für die Scripte geben, die als root ausgeführt werden sollen. Tipp' mal ein "man sudoers" ein ;-)

JamesB
Also Ich benutze ja auch ein Webinterface, um meine Server zu steuern und es läuft jetzt nur noch ausschliesslich über SuPHP. Die Scripte werden nur noch von den asgeführt dem sie auch gehören - z.b zu der gruppe ftponly.

Hatte vorher auch immer das Problem, das meine Server als root ausgeführt wurden, was eine sicherheitslücke darstellte und das zusammen mit sudo. Bin dann auf suPHP umgestiegen und habe alle sudoers einträge gelöscht. Wenn ich jetzt mein Gameserver starte, dann steht z.b wenn man "top" eingibt das es z.b unter den rechten web1 läuft mit der gruppe ftponly.

Wenn das Script auch sauber geproggt ist, dann sollte man schon auf der Sicheren Seite sein ;)
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: suPHP - ein paar Fragen

Post by majortermi »

markusk wrote:Dann ist es ja wohl ein Witz, suPHP zu installieren, wenn man es so einfach umgehen kann. Gibt es keine sicher Alternative außer den Apache2 (da läuft ja jeder VHost unter einem eigenen User)?
Es hat seinen Grund, dass in der suPHP-Dokumentation ausdrücklich davon abgeraten wird, "mod_php" zu laden, wenn man suPHP benutzt.

Confixx scheint an sich kein mod_php zu benötigen (wenn man mal von der Authentifizierung, bei der aber nur eine Zeile geändert werden muss - und das auch nur, wenn man Apache 1.3 verwendet, absieht).

Das Problem besteht nur darin, dass Confixx in der "confixx_vhosts.conf" automatisch Direktiven von mod_php benutzt, was natürlich zu einem Fehler führt, wenn mod_php nicht geladen ist.

Hier bieten sich meiner Meinung nach zwei Lösungsansätze an:
1. Man bindet nicht direkt die "confixx_vhosts.conf" in den Apache ein, sondern eine andere Datei, die man automatisch per Skript aus der von Confixx generierten erzeugt (mit einem einfach "sed" sollten sich die "php_*"-Einträge schnell entfernen lassen).

2. Man schreibt ein kleines Dummy-Modul für den Apache, das nichts anderes macht, als Handler für die mod_php-Konfigurationsdirektiven bereitzustellen (aber die dort getroffenen Einstellungen natürlich nicht umsetzt).
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: suPHP - ein paar Fragen

Post by blnsnoopy26 »

Hi,
Es hat seinen Grund, dass in der suPHP-Dokumentation ausdrücklich davon abgeraten wird, "mod_php" zu laden, wenn man suPHP benutzt.

Confixx scheint an sich kein mod_php zu benötigen (wenn man mal von der Authentifizierung, bei der aber nur eine Zeile geändert werden muss - und das auch nur, wenn man Apache 1.3 verwendet, absieht).
Dann erluechte uns einmal und sag uns welche Zeile in Confixx geändert werden muss, damit unter Confixx nur das suPHP nutzen kann :-D
Hier bieten sich meiner Meinung nach zwei Lösungsansätze an:
1. Man bindet nicht direkt die "confixx_vhosts.conf" in den Apache ein, sondern eine andere Datei, die man automatisch per Skript aus der von Confixx generierten erzeugt (mit einem einfach "sed" sollten sich die "php_*"-Einträge schnell entfernen lassen).
Verstehe ich nicht ganz. Vielleicht kannst du uns da ja ein Beispiel machen, denn kann man das mal ausprobieren ;)
2. Man schreibt ein kleines Dummy-Modul für den Apache, das nichts anderes macht, als Handler für die mod_php-Konfigurationsdirektiven bereitzustellen (aber die dort getroffenen Einstellungen natürlich nicht umsetzt).
Davon habe ich z.b überhaupt kein Plan wie das gehen soll. Auch hier wäre vielleicht eine kleine Anleitung ganz nützlich und vielleicht gibt es ein paar leute die es gerne nutzen möchten ;)

Also ich benutze noch den Apache 1.3.27 und wenn das alles so einfach ist wie beschrieben würde ich es gern mal ausprobieren,aber leider bin ich auch noch ein kleiner N00b :-D :-D

Aber vielleicht werden wir ja erleuchet und er sagt uns wie man es am einfachsten macht. Bei mir in der httpd.conf habe ich Global suPHP auf on und bisher nur da mod_php aktiviert wo es benötigt wird wie z.b bei confixx.

Da steht z.b in der httpd.conf bei den confixzeilen das drinnen:

Code: Select all

php_admin_value safe_mode_exec_dir /home/confixx/bin
Und in den vhosts nur das in der ersten Zeile(n):

Code: Select all

#php_admin_flag safe_mode On
#php_admin_value safe_mode_exec_dir /home/www/empty
#RemoveHandler .php
php_admin_flag engine off
suPHP_Engine on
#php_admin_flag engine on
AddType application/x-httpd-php .php .php3 .php4 .html
AddHandler x-httpd-php .php .php3 .php4 .htm
Und dann natürlich für jeden user extra alles noch deklariert und mehr habe ich da auch nicht.

Vielleicht kannstr du uns da eine Anleitung geben, wie man Komplett auf suPHP umsteigt und mod_php links liegen lässt und das dann auch noch Confixx funzt :)

PHP habe ich ja schon so Compiled das es als CGI läuft :)

Code: Select all

PHP 4.3.4 (cgi) (built: Feb  8 2004 13:24:10)
Copyright (c) 1997-2003 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2003 Zend Technologies
    with Zend Extension Manager v1.0.0, Copyright (c) 2003, by Zend Technologies
    with Zend Optimizer v2.1.0, Copyright (c) 1998-2003, by Zend Technologies
Naja mal sehn was hier bei rauskommt :)
Die andere Frage ist lohnt es sich komplett auf suPHP umzusteigen, weil z.b mod_php Funktionen hat die suPHP nicht hat und umgekehrt.

Wäre mal Interessant für mich zu wissen.

In diesem Sinne :wink:
kase
Posts: 1031
Joined: 2002-10-14 22:56

Re: suPHP - ein paar Fragen

Post by kase »

MajorTermi wrote: (wenn man mal von der Authentifizierung, bei der aber nur eine Zeile geändert werden muss - und das auch nur, wenn man Apache 1.3 verwendet, absieht).
[ ] Du hast die Confixx Lizenz gelesen und aktzeptiert ;)
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: suPHP - ein paar Fragen

Post by majortermi »

kase wrote:[ ] Du hast die Confixx Lizenz gelesen und aktzeptiert ;)
[x] Ich lasse meinen Server nicht von instabiler Beta-Software (Confixx) verseuchen.

BTW: Lizensverträge von Software, die ich benutze, interessieren mich nur insoweit, wie sie nach deutschem Recht überhaupt Gültigkeit besitzen.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
coolsurfer
Posts: 61
Joined: 2002-05-01 18:16

Re: suPHP - ein paar Fragen

Post by coolsurfer »

Hi,

ganz einfach. In den "auth.php"-Dateien (die sind mehrfach vorhanden) muss man folgendes ändern:

alt:

Code: Select all

header('HTTP/1.0 401 Unauthorized');
neu:

Code: Select all

header('Status: 401 Unauthorized');
das ist alles :-)

coolsurfer
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

Bisher klappt alles prima. ABer noch eine Frage: Wenn ich nun mit PHP (unter suphp) eine Datei anlege, hat diese die Rechte 500 und ist somit vom apache-prozess nicht lesbar. Wie kann ich das denn ändern, ohne es in jedem meiner Scripte nun von Hand zu tun?

Gruß Markus
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

hat keiner eine idee? :(
User avatar
Joe User
Project Manager
Project Manager
Posts: 11176
Joined: 2003-02-27 01:00
Location: Hamburg

Re: suPHP - ein paar Fragen

Post by Joe User »

Patch?
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

Patch!? Ich hab die aktuellste suPHP-Version
User avatar
Joe User
Project Manager
Project Manager
Posts: 11176
Joined: 2003-02-27 01:00
Location: Hamburg

Re: suPHP - ein paar Fragen

Post by Joe User »

Ã?ndere den Source und erstelle Dir für spätere Updates einen Patch...
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
markusk
Posts: 140
Joined: 2003-05-04 20:14

Re: suPHP - ein paar Fragen

Post by markusk »

hm... Weißt du, welche Dateien ich da genau ändern müsste?