In an earlier post, I mentioned some research I'd been doing with regards to Linux-based server software. To be more specific, I was investigating shared web hosting control panels. Most any web hosting service you find offers a web-based control panel. Generally such a system allows each user to manage their domain information, files, mail accounts, FTP accounts, and other such common features, and allows the admin to manage different user and reseller accounts. Some users get access to run web scripts, some don't, some have more disk space than others, etc. Some require specific underlying server software (a specific Apache version, postfix vs. qmail for email, etc.), others support a variety of alternatives.
So when a prospective client asked me how to go about setting up a Linux-based web host, I figured there would be a menu of choices to pick from. Well, there was; just not a very good one. I looked at four open source offerings: ISPConfig, DTC, ZPanel, and Webmin; and two commercial offerings: CPanel and DirectAdmin. There are other commercial packages on the market, but I was only able to look at those two in the time I had since I had first focused on the open source options.
My full write-up is available online for those who wish to read it (see below). The informal summary, however, is very simple: The open source world has a lot of catching up to do.
If anyone has better experience with this sort of software, please let me know. Frankly, I found the commercial offerings at best decent and the open source ones universally bad. Only one would even work properly (ISPConfig) and it was still only partially translated, making it impossible to recommend to someone for commercial use. While some of the others are supposed to have good reputations, my brief flirtation with them was enough to scare me into permanent hosting bachelorhood.
While I have not written such a web-based hosting control panel myself, so I cannot speak from experience here, I have to think that it can't be that horrendously difficult a task. If supporting multiple server deamons (postfix and exim, for instance) is a problem, then, like many such programs, simply require one in particular and install it automatically. Of course, at that point you're looking at a dedicated installer.
But what's so hard about that? IPCop and similar dedicated distributions have shown that a drop-in firewall with complete web front end can be done. All of the software it needs is included on the CD and comes pre-configured by the installer. A shared-hosting server seems like a perfect candidate for the same sort of dedicated distribution, yet a look through DistroWatch found none.
If anyone is looking to roll a distribution of their own for fun and profit, here's an untapped area to tackle: drop-in shared hosting Pick the open source daemons you want (I recommend Apache 2, PHP 5, Perl, Python, OpenSSH, OpenSSL, postfix, courier-pop, and courier-imap, but that's just me), bundled them in, and put a PHP-based web front end on top of it. If it's at all decent, you'd have no competition right now but I dare say a fair bit of demand.
So, who's a whiz with config files and wants to give it a try? :-)