"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

PHP + CHmod

NyoMic 04.12.2001 - 14:45 1359 12
Posts

NyoMic

xepera-xeper-xeperu
Avatar
Registered: Feb 2001
Location: Stahlstadt
Posts: 2619
A Arbeitskollege von mir muss a Homepage für an Kunden basteln mit Administration der Linuxmaschine über PHP.

Folgendes Problem:

Geht das irgendwie dass man vom PHP aus die Zugriffsrechte einer Datei mit CHMOD verändert??
Und zwar ohne dass man als Root eingeloggt ist, sonder als irgendein andrer Benutzer??

Webserver ist Apache und verwendet wird SuSE Linux 7.3

bBU.CyTrobIc

#include "billrulz.h"
Avatar
Registered: Oct 2000
Location: Hamburg
Posts: 1875
nee geht ned,... setz ordner auf chmod 555 oder 777 ;)

NyoMic

xepera-xeper-xeperu
Avatar
Registered: Feb 2001
Location: Stahlstadt
Posts: 2619
hast recht. Geht wirklich ned. hmm kann man nix machen

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von NyoMic
hast recht. Geht wirklich ned. hmm kann man nix machen
wär ja auch wohl ein fettes sicherheitsloch, wenn sich der inet-user selbst die rechte setzen könnte ;=

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von NyoMic
A Arbeitskollege von mir muss a Homepage für an Kunden basteln mit Administration der Linuxmaschine über PHP.

Folgendes Problem:

Geht das irgendwie dass man vom PHP aus die Zugriffsrechte einer Datei mit CHMOD verändert??
Und zwar ohne dass man als Root eingeloggt ist, sonder als irgendein andrer Benutzer??

Webserver ist Apache und verwendet wird SuSE Linux 7.3

geht wunderbar :D
Code: PHP
exec("chmod xxx file");

der user unter dem der Webserver rennt muss Eigentümer des files sein (normalerweise ist das der user "wwwrun").

ist das nicht möglich, muss der webserver als root laufen - der muss aber dann besser nicht öffentlich zugänglich sein (z.b. firegewalled oder nur über ein vpn)

eine andere Möglichkeit (die ich präferiere) ist dass der Webserver die Änderungen in ein file schreibt, und ein selbstgeschriebener deamon (der unter root rennt) dieses ausliest und nur erlaubte kommandos ausführt.

NyoMic

xepera-xeper-xeperu
Avatar
Registered: Feb 2001
Location: Stahlstadt
Posts: 2619
Das is ja das Problem, der User darf nicht als Root eingeloggt sein und der Benutzer hat keine Zugriffsrechte auf die Datei.

Er ist eh scho draufgekommen dass des ned geht oder nur wenn ma sich als Root einloggt und mit "chown" den Owner der Datei verändert.

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von NyoMic
Das is ja das Problem, der User darf nicht als Root eingeloggt sein und der Benutzer hat keine Zugriffsrechte auf die Datei.

Er ist eh scho draufgekommen dass des ned geht oder nur wenn ma sich als Root einloggt und mit "chown" den Owner der Datei verändert.

Sinds kleine Dinge, würd ich einfach ein kleines Proggie mit SUID das machen lassen.

Die Keule wär eine kopie von /bin/chmod mit gesetztem SUID - von dieser Lösung ditanzier ich mich aber :D.

Soll wirklich der ganze Server über ein Webinterface administriert werden, ist ein apache, der gleich unter root rennt gscheiter (dieser apache muss aber dann besonders gesichert werden)

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
die lösung mit dem file, dass dann vom deamon abgegrast wird, gefällt mir - ein fescher "work-around".

:cool:

manalishi

tl;dr
Avatar
Registered: Feb 2001
Location: Feldkirch
Posts: 5977
Zitat von rettich
die lösung mit dem file, dass dann vom deamon abgegrast wird, gefällt mir - ein fescher "work-around".

:cool:

affirmative. die root-lösungen sind meistens etwas holprig, sowas mach ich äußerst ungern.

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von manalishi
affirmative. die root-lösungen sind meistens etwas holprig, sowas mach ich äußerst ungern.

jeder, der den apache als r00t laufen lässt, gehört ja geschlagen - sowas TUT man einfach nicht :p

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von rettich
jeder, der den apache als r00t laufen lässt, gehört ja geschlagen - sowas TUT man einfach nicht :p

Und wers tut, wird meistens sowieso bestraft *gg*

Ich habs meistens so gelöst, dass dieses File vom Webserver geschrieben wird, und dann jeden Tag um 0:00 ein cronjob das Ding auswertet.
Ist vor allem bei Settings die Serverdienste betreffen gscheit, denn wenn man bei jeder Änderung den entsprechen Deamon neu startet sinkt die Verfügbarkeit auf die eines Windows-Systems :D

that

Moderator
Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338
Zitat von rettich
die lösung mit dem file, dass dann vom deamon abgegrast wird, gefällt mir - ein fescher "work-around".

:cool:

Ja die gefällt mir auch, werd ich mir merken. :)
Das müsst eigentlich mit named pipes recht elegant auch in Echtzeit gehen, oder?

Guest

Deleted User
Registered: n/a
Location:
Posts: n/a
Zitat von that
Ja die gefällt mir auch, werd ich mir merken. :)
Das müsst eigentlich mit named pipes recht elegant auch in Echtzeit gehen, oder?

Jo, wennst Echtzeit willst ist das eigentlich _DIE_ Lösung, musst halt nur aufpassen dass der Server immer da ist, sonst blockt der Client ewig und das ist sicher nicht Sinn der Sache :D
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz