I am thinking to get a dedicated/virtual server, but have some questions before I take the plunge (bit mixed up with which bits to do myself or which bits to hire).

I am running, centos, php, mysql, postgresql, tomcat, (mail server - dont really undestand how to test this locally)

I would ideally like a server with a Centos OS that I can log into and do pretty much what I like, install new software, use the desktop, login remotely etc.

Here are my questions:

OS Image - should I use my own Centos (get it right locally) and upload it to the host?

DDOS attacks - do most hosts prevent this? any suggestions?

DNS set up - should I do myself or rely on the host to set it up for me? - easy in linux?

Hosts - any thoughts on good ones, im in uk, in that case should i go for uk?

As you can see Im a bit confused. I would like to do most of this myself and just let the host provide the hardware. Im not a newb, but also not an expert and will have a lot of work on my hands if I have to do this all myself.

Appreciation will be shown for any answers :)



Your host will probably provide you with a pre-installed operating system, configured how they need it - mainly because it is easier to support if they installed it. If you were starting from scratch, you would normally do the install on hardware it's going to run on in case of any driver issues. A host probably won't be very accommodating in installing an image on to a server anyway.

However, I think first you need to consider whether CentOS is best for your needs. If you are a complete beginner (and don't have time to become anything else), I would highly recommend cPanel (it is built on top of CentOS). It comes with mail, webmail, ftp, ssh, http/https and a nice graphical website to manage every aspect of your server. If you haven't used Linux before, you won't notice how horrible it is :)

If you actually want to learn about Linux, then I would recommend that you go for Debian (this is a hot topic, one that is rarely objective. Debian is my preference ;)

With regards to (D)DoS attacks, how they are handled shows a lot about a host. One that just null-routes your IP address immediately is one to be wary of. Ask your hosting provider about their relationship with their upstream providers - whether they coordinate with each other during attacks, what protection they have in place to thwart attacks. This is usually a device that analyses traffic for abnormal patterns, separating the attack traffic from the normal traffic.

Many hosts have nameservers you can use and offer a control panel to manage DNS entries. If you want to have absolute control then you can run your own nameserver and use the host's for slaving purposes.

  • I would say go with a virtual machine (VPS) rather than physical hardware for your first machine: it's a whole bunch of stuff like drive failures and the like which you won't have to worry about. – voretaq7 Feb 17 '10 at 21:01
  • I run centos locally and have got kinda used to it. Maybe i will have a go at debian. The thing is, i am wondering whether to run my own server from home, because hosts always seem to restrict you in different ways. If I go with dedicated/virtual hosting on Debian, will i be able to install java, solr etc or would the host prefer to do this for me? Can i log into the server and use the desktop should i use hardware login rather than vnc? Cheers for the advices,really appreciate it :) im so confused with this, but know hardward and software pretty well, not quite a noob – Ke. Feb 17 '10 at 21:02

What's the purpose of this server?

If you plan to use this server for business purposes, then I highly recommend using Red Hat. Most providers will give you Red Hat at no or little charge. With Red hat, updates tend to come out faster than with CentOS.

You will want to find an unmanaged server provider. They will not restrict your usage in any way (beyond their acceptable use policy).

Companies like 1&1 provide cheap systems with very little support. Companies like SoftLayer deliver a great product with some added support tools, like the ability to re-image your server.

If this is for hobby/personal use and you don't care what really happens to the data on the system, just look for a good deal.

If this is for business use, then I highly recommend you think about: uptime requirements 24/7 support disaster and recovery monitoring future growth .... then make a decision.


My favorite setup is Ubuntu LTS with the "LAMP" install from the tasksel command. This is by far the easiest install, even easier than XMAPP. This setup is also far more secure than XAMPP, the biggest reason is that its very easy to update sudo apt-get update, you can also turn security only auto-updates ON.

Next up you have to install APC for PHP. Caching PHP is a MUST.

If your concerned with security highly recommend installing a Web Application Firewall(WAF). WAFs can block attacks before they can reach your web application, they can also log attacks against your system which is vital for law enforcement. Mod_Security is free and OpenSource. Mod_Secuirty does provide some protection against DDoS, although if your actually being attacked you probably need to higher some professionals and also give a lot of money to Cisco.

If you go with CentOS make sure you have SELinux in prevention mode. Ubuntu comes with AppArmor and rule sets for Mysql/Apahce and just about every other commonly used daemon process.

In terms of hosting I like Amazon EC2, although to be honest a cloud isn't the best for all web applications. Amazon EC2 does have some nice features, including pre-built CentOS and Ubuntu LAMP disk images that you can just boot up on demand. So that is technically easier than even Ubuntu's Tasksel.

Not the answer you're looking for? Browse other questions tagged or ask your own question.