This is a "copy & paste" HowTo! The easiest way to follow this tutorial is to use a command line client/SSH client (like PuTTY for Windows) and simply copy and paste the commands (except where you have to provide own information like IP addresses, hostnames, passwords,...). This helps to avoid typos.
The Perfect Setup - CentOS 4.3 (64-bit)
Author: Falko Timme <ft [at] falkotimme [dot] com>
Last edited 05/20/2007
This is a detailed description how to set up a CentOS 4.3 based server that offers all services needed by ISPs and hosters (web server (SSL-capable), mail server (with SMTP-AUTH and TLS!), DNS server, FTP server, MySQL server, POP3/IMAP, Quota, Firewall, etc.). This tutorial is written for the 64-bit version of CentOS 4.3, but should apply to the 32-bit version with very little modifications as well.
I will use the following software:
- Web Server: Apache 2.0.x
- Database Server: MySQL 4.1
- Mail Server: Postfix (easier to configure than sendmail; has a shorter history of security holes than sendmail)
- DNS Server: BIND9 (chrooted!)
- FTP Server: proftpd
- POP3/IMAP server: dovecot
- Webalizer for web site statistics
In the end you should have a system that works reliably, and if you like you can install the free webhosting control panel ISPConfig (i.e., ISPConfig runs on it out of the box).
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!
To install such a system you will need the following:
1 Install The Base System
Boot from your CentOS 4.3 CD (CD 1).
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:
We want to install a server so we choose Server here:
Next we do the partitioning. Select Automatically partition. This will give you a smalll /boot partition and a large / partition which is fine for our purposes:
I'm installing CentOS 4.3 on a fresh system, so I answer Yes to the question Would you like to initialize this drive, erasing ALL DATA?
Select Remove all partitions on this system.
We want to remove all Linux partitions, so we answer Yes to the following question:
The installer presents you an overview of our new partitions. Click on Next:
Now the boot loader GRUB will be installed. You can leave the default settings unchanged and click on Next: