The Perfect Server - Fedora 14 x86_64 [ISPConfig 2]

Version 1.0
Author: Falko Timme
Follow me on Twitter
Last edited 11/04/2010

This is a detailed description about how to set up a Fedora 14 server that offers all services needed by ISPs and hosters: Apache web server (SSL-capable) with PHP5/Ruby/Python, 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 Fedora 14, 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 (i.e., ISPConfig runs on it out of the box).

I will use the following software:

  • Web Server: Apache 2.2.16
  • PHP 5.3.3
  • Ruby
  • Python
  • Database Server: MySQL 5.1.51
  • 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 server1.example.com with the IP address 192.168.0.100 and the gateway 192.168.0.1. These settings might differ for you, so you have to replace them where appropriate.

 

3 Install The Base System

Boot from your Fedora 14 DVD. Select Install a new system 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 Fedora 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:

If you see the following message (Error processing drive: [...] This device may need to be reinitialized. REINITIALIZING WILL CAUSE ALL DATA TO BE LOST!), please click on Re-initialize:

Fill in the hostname of the server:

Choose your time zone:

Give root a password:

Next we do the partitioning. Select Replace Existing Linux System(s). This will give you a small /boot partition and a large / partition which is fine for our purposes:

Select Write Changes to Disk:

The hard drive is being formatted:

Now we select the software we want to install. Uncheck Graphical Desktop and check Web Server instead. Then check Customize now. Afterwards, select the additional repositories Fedora 14 - x86_64 and Fedora 14 - x86_64 - Updates (if you are on an i386 system, the names are probably Fedora 14 - i386 and Fedora 14 - i386 - Updates):

As the last two repositories need an Internet connection, a new window pops up where you have to configure your network card. Select your network card and click on OK:

Go to the Wired tab, select the network interface and click on Edit...:

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. 145.253.2.75,8.8.8.8), 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 192.168.0.100 and netmask 255.255.255.0 for demonstration purposes; if you are not sure about the right values, http://www.subnetmask.info might help you). Also fill in your gateway (e.g. 192.168.0.1); check the Connect automatically box and then click on the Apply... button:

Next click on Close in the Network Connections window:

Share this page:

3 Comment(s)

Add comment

Comments

From: Anonymous at: 2011-03-31 12:23:44

We don't start BIND now because it will fail because of a missing /var/named/chroot/etc/named.conf. This will be created later on by ISPConfig (if you use ISPConfig's DNS Manager, that is).

This is untrue. when ISPConfig is installed the named.conf file is not there, and bind does not start.

 There is also a step left out where you should have typed yum install flex. My installation failed because it was never installed in the perfect setup, even though it is required for ISPConfig.

From: Anonymous at: 2011-05-01 01:42:02

The instructions are incorrect for 64 bit where it says vi /usr/lib64/sasl2/smtpd.conf.

On my 64 bit install i found my smtpd.conf file at /etc/sasl2/smtpd.conf. Type vim /etc/sasl2/smtpd.conf instead of vi /usr/lib64/sasl2/smtpd.conf.

From: TobiSGD at: 2010-11-14 21:47:08

Nice work, but i don't see the point in using a distribution with such a short release-/life-cycle on a server.