First web server questions

Hi there,

Just looking for some help/suggestions with this. I require my own server for an upcoming project that will be hosting users websites. I want to build a control panel the user can log into and modify their website which will be stored elsewhere on the server. This all seems easy enough, It’s just managing domains and emails that confuse me.

What should I look for to manage domain names and point them to the correct website and also what would be the best way to manage email accounts/set up new ones etc. I want to avoid cPanel/WHM if possible, I’m looking to control most things through the control panel I will be building. So any suggestions on this would be useful as well, as I will be wanting to add email accounts through php (Can be done using a shell I assume?).

I’m really looking for some suggestions on what software to use to set this up, any advice would be really helpful!

Thanks,
Graeme

EDIT: I will also be wanting to measure bandwidth used on the websites container in each users directory, any suggestions on making this possible?

Take a look at Plesk or CPanel as both can manage a hosting environment (or just a few users)

I don’t want to give users a full cPanel, or any of it really. It doesn’t really do what I need it to do. Really I’m looking to build my own control panel, but I’m not sure what should be run on the server to accomplish this. Really I’m just not sure what to use for DNS and the mail server, I’m sure once I get them I’ll know where to go from there.

Maybe I’m overthinking things, I suppose I could use something like cPanel/Plesk and bypass it with my own control panel? Though I don’t want things to get too messy.

Control panels are not trivial applications. I’ve used the open-source ispconfig3 panel on linux and it’s pretty complex.

I’ve set up a VPS with webmin for now, seems to be what I was looking for. Really I just want to automate setting up the domain zones (Which I think it’ll be using a managed DNS service for, so it might not be possible) and also the set up of email accounts.

Will need to look further into webmin to see how this can be done.

GMCom: If you really don’t don’t know what needs to be done - or how to do it, then you should not be trying this yourself. There is no easy answer - and security is a very big concern.

Use a third party control panel - it will offer the greatest flexibility and security. They are also patched regularly since hacker never quit finding new ways! Most control panels will give you the ability to give the end user as much - or as little control as you want them to have.

After using a 3rd party CP you might start to understand the concepts, and you can start testing your own ideas on a test server.

Just my 2 cents.

EDIT: Sorry, your post appeared while I was typing my answer. Webmin is OK and works well for an admin - but you can’t really give your end users any control from it. I don’t believe it will allow that without giving them full access.

If you are looking to measure bandwidth (mentioned in your initial post as an edit) - look into something called MRTG.

Thanks for the reply, I’m considering security in what I’m doing. The idea isn’t to give the user access to webmin, but to be able to add domains/emails through the users control panel. It would just be sending things to the programs being run under webmin really.

Webmin is a great panel. Its web interface helps you take control of all technical aspects as well as all services on your server. Besides its an open source control panel.

You can very easily set up a Linux server to centralise a LOT of your settings into a database.

For example, I have built my own control panel that stores all DNS, Email and FTP account details in a database.

Look into ‘virtual hosting’ tutorials on somewhere like howtoforge.com, this should help you set up a Linux server to do what you are after.

if you want to build a simple limited featured control panel, you can do it in php.

I have done it that way.

Terry Davies