If you’re used to shared hosting, switching to your first dedicated server can be a bit of a challenge. There are different types of dedicated servers, all with varying degrees of difficulty. Some leave all configuration responsibilities up to you, while others fully configure everything you need. Before you buy, it’s important to understand the differences between managed, semi-managed, and un-managed packages. Either way, you’re going to be in charge of an entire server and it’s important that you understand what your new responsibilities will be. Luckily there is a whole bunch of cool software we can use to make your new job a lot easier.
Un-Managed
The first and the hardest type of dedicated hosting is un-managed. This means your web host is responsible for the networking to the server, and the hardware of the server. They aren’t responsible for any of the software that runs on it. It will be your duty to setup an HTTPD, an SQL database, and any other services you wish to run. You should be familiar with Linux and have a basic understanding of how Apache, MySQL, etc work.
The first thing you’re going to need to do is familiarize yourself with your Linux distribution’s package manager. A package manager allows you to install just about any piece of opens source software by just typing in a series of commands. It also allows you to update whatever software you currently have installed.
The most important software you need to run a basic webserver is LAMP. This stands for Linux (already installed), Apache (webserver), MySQL (SQL database), and PHP (self-explainitory!). The L for Linux is obviously already taken care of, but the rest you will need to install yourself. Luckily, there are plenty of guides to completing this task and by punching in a few commands, and editing a few configuration files, you can have yourself up and running in no time.
To get started installing LAMP, you’ll need to figure out which distribution you’re using. Each distro has a different package manager and a different installation process. If you’re using an Ubuntu based server, you can check out their LAMP installation guide here. This will take you through the process of setting up a basic configuration for these services, as well as how to install them.
Since you’re fully responsible for your server, it’s also crucial you perform basic administrative responsibilities. This includes handling both backups and security. Syncbak is a free open source utility that allows you to easily backup everything on your server. You can save your MySQL databases, email, and webserver files all at once. You can schedule the backup, and set it to save to a remove server. You can also create reports and backup status via email, HTTP, or RSS.
Security is of utmost importance when owning your dedicated server. Along with religiously applying updates, there’s a couple things to do that can make your websites more secure. The first is to install Apache’s mod_security. This is a module for Apache that goes above and beyond the normal apache functions. It scans headers, URL requests, and more. It also gives you the option of providing more detailed logging. It acts as a first line defense between your websites and a potential attacker. If you have an insecure script hosted on your website, there’s a chance that it can’t be exploited because mod_security will catch it first. This module scans interactions between users and your website in real time, to stop attacks while they’re happening.
Often times a shared host will offer some sort of automatic virus protection. Well, with your own server this doesn’t exist. Web applications are at a high risk to being exploited because anyone can access them. Once compromised, an attacker can easily place a backdoor on the target system. PHP-Scanner is a free and open source utility that easily scans all your web files looking for anything malicious. It will search PHP, CGI, and HTML files, looking for anything that seems suspicious.
Semi-Managed
This is the option for most people. If you’re not very Linux savvy, yet still want to save a few dollars, this is probably the option for you. This option basically takes care of everything listed above. Your host will be responsible for the LAMP package, as well as basic security. Sometimes semi-managed packages even come with a management panel like cPanel that you’re already familiar with. The only thing that your host will not be responsible for is custom software. Things like gaming servers, IRC servers, and other custom software will not be the responsibility of the host. They will only handle basic things like Web, Mail, and DNS. This is fine for 90% of people, and is probably the more common option.
Fully Managed
A fully managed dedicated server is when your host is responsible for installing and maintaining all software on the server. They’re responsible for the updates, the installation, and the fixing of anything that isn’t working. As you have probably already guessed, it’s also the most expensive option. In fact, the support is going to be more than the server itself. As outlined above, managing a server isn’t easy and it’s very time consuming. A managed solution puts all the responsibility to the host. It will come with a nice shiny management panel, and a 24/7 assistance with configuration and other tasks. This solution is for businesses seeking a completely hands off management style and for someone who just wants everything to work.