The Perfect Server - CentOS 6.0 x86_64 [ISPConfig 2]

Version 1.0
Author: Falko Timme
Follow me on Twitter
Last edited 08/03/2011

This tutorial shows how to set up a CentOS 6.0 server (x86_64) that offers all services needed by ISPs and web hosters: Apache web server (SSL-capable), Postfix mail server with SMTP-AUTH and TLS, BIND DNS server, Proftpd FTP server, MySQL server, Dovecot POP3/IMAP, Quota, Firewall, etc. This tutorial is written for the 64-bit version of CentOS 6.0, but should apply to the 32-bit version with very little modifications as well. In the end you should have a system that works reliably, and if you like you can install the free webhosting control panel ISPConfig 2 (i.e., ISPConfig runs on it out of the box).

I will use the following software:

  • Web Server: Apache 2.2.15 with PHP 5.3.2
  • Database Server: MySQL 5.1.52
  • Mail Server: Postfix
  • DNS Server: BIND9 (chrooted)
  • FTP Server: Proftpd
  • POP3/IMAP server: Dovecot
  • Webalizer for web site statistics

Please note that this setup does not work for ISPConfig 3! It is valid for ISPConfig 2 only!

I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!


1 Requirements

To install such a system you will need the following:


2 Preliminary Note

In this tutorial I use the hostname with the IP address and the gateway These settings might differ for you, so you have to replace them where appropriate.


3 Install The Base System

Boot from your first CentOS 6.0 DVD (DVD 1). Select Install or upgrade an existing system:

It can take a long time to test the installation media so we skip this test here:

The welcome screen of the CentOS installer appears. Click on Next:

Choose your language next:

Select your keyboard layout:

I assume that you use a locally attached hard drive, so you should select Basic Storage Devices here:

You might see the following warning - Error processing drive. If you see this click on the Re-initialize all button to proceed:

Fill in the hostname of the server (e.g., then click on the Configure Network button:

Go to the Wired tab, select the network interface (probably eth0) and click on Edit...:

Mark the Connect automatically checkbox and go to the IPv4 Settings tab and select Manual in the Method drop-down menu. Fill in one, two, or three nameservers (separated by comma) in the DNS servers field (e.g.,, then click on the Add button next to the Addresses area:

Now give your network card a static IP address and netmask (in this tutorial I'm using the IP address and netmask for demonstration purposes; if you are not sure about the right values, might help you). Also fill in your gateway (e.g. and click on the Apply... button:

The network configuration is now finished. Click on the Next button:

Share this page:

6 Comment(s)

Add comment


From: Eduardo Bergavera at: 2011-09-12 21:24:06

Hi Falko,

 First off, I would like to commend you on consistently providing the community an easy to follow, step-by-step tutorial on Linux.

Just a clarification with regards to configuring network interface. I observed that during installation you have configured the network already (eth0) and other information. Is it necessary to do this again right after the installation as what you did in this page?




From: greig at: 2011-11-21 02:37:54

hi and thank you for this tutorial, i couldn't do it without it. 

 i am installing on a vps and have two ethernet controllers listed - eth0 and eth1.  after setup i run ifconfig and neither of eth0 or eth1 show.  Am I missing a virtual ethernet manager package or something?


From: sesso at: 2011-10-13 16:30:54

Used the perl line from the Debian instructions. Seems to be missing perl modules.

From: Edilson Hipolito da Silva at: 2011-10-24 11:05:51
From: Anonymous at: 2011-11-07 23:01:40

Is you have problems installing modruby, change address to : wget

From: complex at: 2012-12-02 16:44:12

Thanks for the directions!

As of 12/2012, here's an updated link for mod_python package; 6-5 link didn't work for me: