Hallo,
Ik heb een paar simpele mailservers draaien met Postfix, Courier-IMAP en
Squirrelmail in een Maildir-configuratie. Dit houdt in dat elk account
domweg een eigen directory onder /home heeft.
Nu is het gewenst dat men zonder SSH-root-login onder meer accounts kan
aanmaken en verwijderen, en dan bij voorkeur via een lokale webpagina -- er
draait immers toch al een webserver voor Squirrelmail.
De vraag is hoe ik vanuit een PHP-script (dat draait met de beperkte rechten
van de webserver -- hier www-data) scripts kan starten met root-permissies,
nodig voor het aanmaken en verwijderen van gebruikers enzovoort.
Het lijkt me een bijzonder slecht idee om www-data alomvattende root-rechten
te geven, bijvoorbeeld via /etc/sudoers.
Het PHP-script hoeft eigenlijk maar één ding te doen, namelijk een script
met root-rechten een seintje geven om actief te worden. De overdracht van
(gevalideerde) data kan verder via allerlei veilige wegen plaatsvinden. Je
zou zelfs kunnen denken aan een cron-job die iedere minuut controleert of
er nog wat op dit gebied moet gebeuren -- maar dat staat een vlotte
interactie toch wel in de weg. Zoeken op internet levert echter vooral veel
slechte suggesties op.
Heeft iemand hier wellicht een goed idee? Of een verwijzing naar informatie
hierover? En nee, ik ben niet op zoek naar Webmin (te veel slechte dingen
over gehoord) of OpenPanel (vond ik onwerkbaar en veel te uitgebreid). Ik
wil gewoon een simpele webpagina maken voor een simpele taak -- die echter
wel root-rechten vereist aan de kant van de server.
Alvast mijn dank,
Richard Rasker
--
http://www.linetec.nl
Evenementen voor de komende 60 Dag(en)
Resultaten 1 tot 3 van de 3
-
Linux-permissievraag: root-scripts uitvoeren via PHP?
- advertentie
-
Re: Linux-permissievraag: root-scripts uitvoeren via PHP?
Richard Rasker <spamtrap@linetec.nl>:
> Het PHP-script hoeft eigenlijk maar één ding te doen, namelijk een script
> met root-rechten een seintje geven om actief te worden. De overdracht van
> (gevalideerde) data kan verder via allerlei veilige wegen plaatsvinden.
> Je zou zelfs kunnen denken aan een cron-job die iedere minuut controleert
> of er nog wat op dit gebied moet gebeuren -- maar dat staat een vlotte
> interactie toch wel in de weg. Zoeken op internet levert echter vooral
> veel slechte suggesties op.
Je kunt een shell/perl/python/...-daemon draaien als root die wacht op
inkomende requests? Communicatie kan op verschillende manieren
plaatsvinden, via een socket of b.v. een named pipe:
-snip-
#!/bin/sh
mkfifo /tmp/mijnfifo 2>/dev/null
while true
do
while read i
do
# doe iets met $i
done < /tmp/mijnfifo
done
-snip-
--
robert
-
Re: Linux-permissievraag: root-scripts uitvoeren via PHP?
robert wrote:
> Richard Rasker <spamtrap@linetec.nl>:
>> Het PHP-script hoeft eigenlijk maar één ding te doen, namelijk een script
>> met root-rechten een seintje geven om actief te worden. De overdracht van
>> (gevalideerde) data kan verder via allerlei veilige wegen plaatsvinden.
>> Je zou zelfs kunnen denken aan een cron-job die iedere minuut controleert
>> of er nog wat op dit gebied moet gebeuren -- maar dat staat een vlotte
>> interactie toch wel in de weg. Zoeken op internet levert echter vooral
>> veel slechte suggesties op.
>
> Je kunt een shell/perl/python/...-daemon draaien als root die wacht op
> inkomende requests? Communicatie kan op verschillende manieren
> plaatsvinden, via een socket of b.v. een named pipe:
> -snip-
> #!/bin/sh
>
> mkfifo /tmp/mijnfifo 2>/dev/null
> while true
> do
> while read i
> do
> # doe iets met $i
> done < /tmp/mijnfifo
> done
> -snip-
Dat ziet er uit als een bruikbaar en veilig mechanisme; ik ga hier eens mee
aan de slag. Mijn dank!
Richard Rasker
--
http://www.linetec.nl



LinkBack URL
About LinkBacks
