On Fri, 2010-04-30 at 10:40 -0400, Paul M Foster wrote:
> On Fri, Apr 30, 2010 at 12:11:17PM +0530, Nilesh Govindarajan wrote:
> > On 04/30/2010 11:26 AM, Jim Lucas wrote:
> >> Nilesh Govindarajan wrote:
> >>> Hi,
> >>> As you know there are lot of control panels lying around like Cpanel,
> >>> Lxadmin, most of them based on PHP. The control panels allow editing of
> >>> system files which requires root privileges, can somebody tell me how to
> >>> gain root privileges inside the script so that it can be useful if I
> >>> want to give my users a DNS editing interface instead of loading a big
> >>> bloated control panel.
> >> We use an interface that writes everything to a DB. Then, every 5
> > minutes, a
> >> cron job comes around and dumps the db and builds the zone files for us.
> >> Might try something similar. It would be a lot safer then giving
> > root access
> >> via PHP... :)
> > Hmm that's a great idea. But my question is in general, suppose I get
> > some freelance job to write a control panel for managing httpd, etc.
> > Same procedure can be used ? I think so ?
> If you can find an open source control panel (like webmin), you could
> download the code and examine it.
> Paul M. Foster
You could use exce() to run a sudo command (piping the password through
to it or add the apache user into the sudoers list) to run things at the
root level. You must be very very careful with this though, and only use
it as a last resort if you absolutely have to, as any sort of
vulnerability in your script could compromise your entire server.