Webinterface und Rechtefrage

Herrmann

Well-Known Member
Hallo Leute,
ich bin gerade dabei ein Webinterface für einige meiner Server zu planen. Das ganze möchte ich mit PHP oder mod_python schreiben. Mein Problem: Wie führe ich eigendlich administrative Arbeiten aus? Gebe ich meinem www-User unter welchem ja auch mein Apache läuft die notwenigen Rechte - wäre doch nicht wirklich sinnvoll oder? Wie also führe ich Sachen als root unter PHP aus? Hat jemand von euch schonmal sowas gemacht? Vielleicht sudo?
 
Ich hab die Funktionen die Rootrechte benötigen in Shellscripte gepackt, und rufe aus PHP diese per sudo auf. So ganz wohl ist mir bei der Sache allerdings nicht, da es sich z.B. um Skripte handelt die die Userverwaltung des Systems steuern, und dazu Parameter vom PHP-Skript übergeben kriegen. Somit bräuchte ein Angreifer nur noch die Rechte des Apachen zu erlangen um sich dann Rootrechte zu verschaffen. Zwar hab ich alle Sachen die mir eingefallen sind im Shellskript abgefangen, das ist allerdings zwangsläufig auch für apache lesbar, also weiss er ziemlich schnell welche Möglichkeit ich vergessen habe..
Für Paranoide ist sowas also nichts..

Gruss Maurice
 
Hallo Björn, unter anderem soll man über das Webinterface Nutzer auf meinem Mailserver bequem einrichten können. Ich möchte aus zwei Gründen keine fertige Lösung verwenden: Zum einen möchte ich das ganze genau an mein Anforderungen anpassen und zum Zweiten möchte ich dadurch wieder etwas lernen.
 
Hi k33n,
meine Frage zielte ja nicht unbedingt auf Alternativen :) Einige Aufgaben sollen halt als root bzw. mit root-Rechten durchgeführt werden. Werde mir wohl mal einige fertige Lösungen anschauen, um zu sehen wie die es gelöst haben. Die Idee von moe behalte ich mal als Notlösung im Hinterkopf.
 
Ich kann da eigentlich nur Björn König und k33n zustimmen. Für viele
Teilbereiche gibt es schon hervorragende Lösungen, z.B. postfixadmin,
ansonsten empfiehlt es sich die Einstellungen in eine Datenbank
zu schreiben - dafür benötigt der www User nur Schreibrechte auf die
Datenbank. Viele Dienst lassen sich so konfigurieren, dass sie ihre
Einstellungen aus der Datenbank lesen, alternativ gibt es noch die
Möglichkeit mit einem cron job alle 5 Minuten die Daten aus der DB zu
holen und eine entsprechende Konfiguration für den Dienst zu erzeugen
und diesen um einen reload zu bitten.

mfg dagnu

ps: bin selber gerade selber am basteln, wollte dafür mal ruby on rails antesten
 
Herrmann schrieb:
Hallo Björn, unter anderem soll man über das Webinterface Nutzer auf meinem Mailserver bequem einrichten können. Ich möchte aus zwei Gründen keine fertige Lösung verwenden: Zum einen möchte ich das ganze genau an mein Anforderungen anpassen und zum Zweiten möchte ich dadurch wieder etwas lernen.

Wenn du etwas lernen willst, dann würde ich dir auf jeden Fall Nahe legen, erstmal etwas fertiges wie bereits genannt postfixadmin oder sogar syscp zu probieren. Da kann man sich schon einiges abschauen, was die Vorgehensweise anbelangt, also z.B. einen möglichen Aufbau der Datenbank; da bekommt man dann schon mal mit, was man beachten muss.

Wenn du dann immernoch etwas eigenes willst, dann kannst du loslegen; vielleicht reicht es dir aber auch schon, den vorhandenen Quelltext deinen Bedürfnissen anzupassen. :)

Björn
 
Ich wollte so etwas auch schon immer mal auf meinem Server haben...
Also, was auch immer du im Endeffekt benutzt, ich würde mich um einen Bericht im Wiki darüber sehr freuen! :-)
 
free schrieb:
Ich wollte so etwas auch schon immer mal auf meinem Server haben...
Also, was auch immer du im Endeffekt benutzt, ich würde mich um einen Bericht im Wiki darüber sehr freuen! :-)

Hi free, ich habe am Wochenende bereits angefangen ein eigenes Webinterface zu schreiben. Sieht auch schon sehr vielversprechend aus. Ich denke mal, dass ich schon im Laufe dieser Woche etwas auf meiner Seite veröffentlichen kann.
 
Zurück
Oben