# Server-Client based Webmin like tool - Developers wanted!

## @4u

Hi there

I'm currently developing an web interface (based on PHP + Perl backend) to control my services and daemons easier. I know that Webmin exists and helps you in configuring your system, but you can't start "scheduled tasks" (for example emerge sync) with it.

webControl is doing it's work through jobs. You can run a job directly (and get a web page showing you "task still running, elapsed time ..., estimated time ..., and so on) or let it run on a spool based system. All jobs will show up in a manager with the status (not started, running, completed successfully, completed with errors, ...) and you can read the logs (1:1 copy of the console output).

Another advantage should be (currently not implemented) that you can not only configure and start / stop your services, but control (for example) capisuite directly (deleting fax messages, ...).

Here's an early screenshot:

http://sourceforge.net/project/screenshots.php?group_id=17176 (German)

Showing: Portage updates with packages that are blocked or would be downgraded if running emerge --update world.

I will use it here for fun and testing - but I'm wondering if it is interesting for other users. I would be happy to publish it (W3C / GPL) if it makes sense and develop it focusing on security and multi-user ability (partly already included).

What do you thing? Are you a "console junkie" running nano / vim only or would you like to use a system like Webmin and use an interface to control things (even if this is a little bit like M$ Windows - point and click  :Wink: )? Or won't you try it because Webmin supports everything you need?

Thanks for your answers in advance.

PS.: Incomplete feature list:

- Supports multiple languages / skins / users / ...

- Module based and easily extentible

- Hopefully "secure" system

- Double protected job manager (just injecting a SQL statement isn't enough to run system commands like emerge sync)

----------

## jkt

personally, I don't need anything like that. One of the reasons I use linux is that I have easy editable text-based configuration files.

----------

## jamesfarr

Personally I think It's a great Idea, the more people that move to Gentoo the better everyone is!   :Smile: 

----------

## u2mike

I would be very interested in something like this. It would all depend on how secure it was though.

----------

## @4u

 *jkt wrote:*   

> personally, I don't need anything like that. One of the reasons I use linux is that I have easy editable text-based configuration files.

 That's the reason why it is possible to use webbased tools to configuring a system remotely.  :Smile: 

----------

## jkt

 *@4u wrote:*   

>  *jkt wrote:*   personally, I don't need anything like that. One of the reasons I use linux is that I have easy editable text-based configuration files. That's the reason why it is possible to use webbased tools to configuring a system remotely. 

 

`man ssh && man nano && man less`. that's the reason why I don't need any web-based tools  :Wink: 

----------

## jakamaka

Can you use this tool also to let limited users set their webspace preferences ?

----------

## jkt

 *yung wrote:*   

> Can you use this tool also to let limited users set their webspace preferences ?

 

EDIT: I assume you were talking about ssh, not webmin, but it's probably incorrect  :Smile: 

of course I can. There's nothing more that webmin will allow me to do than ssh... But I see what you mean, allowing non-experienced users to edit their settings over web is easier (and in many cases could be even safer, if you use https for transfers, as users won't shell account).

I just said that I can't imagine regular system administration over web based tool instead of console/ssh access.Last edited by jkt on Mon Dec 06, 2004 6:46 pm; edited 1 time in total

----------

## @4u

 *yung wrote:*   

> Can you use this tool also to let limited users set their webspace preferences ?

 That's something already used by CPanel & Co.

BUT I think I will be unable to provide so many different modules to configure Apache2, PHP, user email accounts, ... The most important thing is security (at least that's what I'm trying to focus on).

Anyone with PHP / Perl interested in joining the boat?  :Wink: 

PHP: It's the best web language out there and it includes so many different possibilities to work with databases etc.  :Smile: 

Perl: Suitable for backend procedures like actually running a defined task and so on  :Smile: 

----------

## LucaSpiller

I have just come across this and it looks just like what I am looking for. In a couple of months I will be building a headless server and I need an easy way to monitor it - this looks like it will answer my prayers!   :Very Happy:  (I am not really a religious bloke)

So how is the project progressing? I know quite a lot of PHP and did some Perl a loooong time ago (urrr, about 4-5 years) so I may be able to help out with a few things.

If you want to contact me just PM me, I will try and keep an eye out on this topic though.

----------

## jimbojetset

 *@4u wrote:*   

> 
> 
> I'm currently developing an web interface (based on PHP + Perl backend) to control my services and daemons easier. I know that Webmin exists and helps you in configuring your system, but you can't start "scheduled tasks" (for example emerge sync) with it.
> 
> 

 

Well then why not add make a module for webmin to do this for you? Many more eyes will see your code if it gets included and so forth... starting your own thing from scratch sounds a bit of a waste to me.

----------

## @4u

 *jimbojetset wrote:*   

> Well then why not add make a module for webmin to do this for you? Many more eyes will see your code if it gets included and so forth... starting your own thing from scratch sounds a bit of a waste to me.

 

Well - at least for me, there are several reasons:

1.) I was able to write programs in perl ... but no more (not really)

2.) PHP is a better language to combine the control for backend software (portage) with the control for foreground software (phpBB)

3.) It was (at least partly) some kind of feasibility study for another project I'm already doing since III/2003.

4.) Dividing between foreground and background tasks may be more secure (webmin is always in "foreground")

5.) (it's both - an advantage and an disadvantage) PHP is easier to learn and to work with

[6.) (not really a reason) I don't like monolithic structures]

 *LucaSpiller wrote:*   

> I have just come across this and it looks just like what I am looking for. In a couple of months I will be building a headless server and I need an easy way to monitor it - this looks like it will answer my prayers!   (I am not really a religious bloke)
> 
> So how is the project progressing? I know quite a lot of PHP and did some Perl a loooong time ago (urrr, about 4-5 years) so I may be able to help out with a few things.
> 
> If you want to contact me just PM me, I will try and keep an eye out on this topic though.

 

Well, everything important is running so far (using portage for syncronizing it, doing updates (completely or partly), ...)

Unfortunately, my current employer is interested in using the sWG (kind of application framework - WebControl is based on it) as a CMS (which is also possible). For that reason I have to develop in this direction instead of the WebControl one. Maybe there are some additional PHP enthusiasts out there to get things working cooperatively?

----------

## LucaSpiller

Thats a shame about what your employer wants - is there anything you have done so far that you are allowed to release?

----------

## mallchin

 *@4u wrote:*   

> Hi there
> 
> Here's an early screenshot:
> 
> http://previews.direct-netware.de/wCshot_01.png (German)
> ...

 

Could I possibly nap those graphics at the top for use on my Gentoo site? I've been looking for a theme for ages and that looks real neat! Would like the purple bit, Gentoo logo (and text) and the grey bar  :Very Happy: 

----------

## wjholden

Soooo you're not going to be able to release this stuff to us?

----------

## mallchin

@4u, have you done any work on this you'd like to release under the GPL?

I'm interested in picking up where you left off if you have no time to develop it. I don't have much spare time these days but I'm keen to work on it. I have a little rc-status viewer I just knocked up, but the possibilities are endless...

http://www.dopesmoker.net/foo.php [src]

----------

## mallchin

Done some more work on this, screenies here:

http://photobucket.com/albums/y85/mallchin/?action=view&current=esearch_1.gif

http://photobucket.com/albums/y85/mallchin/?action=view&current=esearch_2.gif

http://photobucket.com/albums/y85/mallchin/?action=view&current=esearch_3.gif

http://photobucket.com/albums/y85/mallchin/?action=view&current=esearch_4.gif

http://photobucket.com/albums/y85/mallchin/?action=view&current=esearch_6.gif

Is this kinda app useful to anyone?

----------

## wjholden

How does this actually work?  Do you have to login as root through a web interface, or does Apache have to run as root?  Managing portage through a web interface does appeal to me. Thanks for you work guys.  Would it be possible for an underprivaledged user to use this?  I wouldn't mind having a friend who I trust a lot this control over my webserver, although I don't trust him with root access as a matter of practice.

----------

## mallchin

 *destuxor wrote:*   

> How does this actually work?  Do you have to login as root through a web interface, or does Apache have to run as root?  Managing portage through a web interface does appeal to me. Thanks for you work guys.  Would it be possible for an underprivaledged user to use this?  I wouldn't mind having a friend who I trust a lot this control over my webserver, although I don't trust him with root access as a matter of practice.

 

To do anything you must login. This is done using basic htaccess authentication.

Once logged in, for basic functions (as in my screenies above), you simply need to add the web-server (usually apache) to the portage group.

To make changes (emerging/unmerging/updating apps, syncing portage, regenerating world mask, editing use flags and the like) I suspect the web-server will need sudo access to several commands (emerge, regenworld et cetera). I haven't written these bits yet, but I envisage making it both as simple, and as secure as possible.

I could implement individual user privaleges or user groups so that you could restrict who can do what.

----------

## wjholden

Ok I'm familiar with using .htaccess so that's cool.  I guess you're saying you'd add the apache user to the portage group (or whatever, depending on functions needed) which is awesome.  You don't need to change anything if you don't want to man, I won't have time for something like this for a couple weeks anyways.

----------

## mallchin

That's about it, adding apache to portage group lets you browse packages just as your user can, but you'll need to setup some sudo rules for apache to access emerge and some other utils for actually emerging stuff. I'm contemplainting if this is worth it, if enough people are interested I'll code that bit, else I'll just finish the browsing section.

I'd like to add something like PHPSysinfo for viewing hardware and diskspace too, and some pages for viewing current setup of stuff like hostname, uname, runlevels, logged in user, past logins, current processes, make.conf settings, gcc revision, portage revision, timezone, keyboard layout, just about anything useful. I feel Gentoo is missing a snapshot view of system status/setup, this is what I'm aiming for  :Smile: 

----------

## rzZzn

Is this project still alive???

I have been looking for something like this for a loong time...

//rZn

----------

