The Perfect Setup - CentOS 5.0 (32-bit) - Page 3

4 Adjust /etc/hosts

Next we edit /etc/hosts. Make it look like this:

vi /etc/hosts

# Do not remove the following line, or various programs
# that require network functionality will fail.               localhost.localdomain localhost  server1
::1             localhost6.localdomain6 localhost6


5 Configure Additional IP Addresses

(This section is totally optional. It just shows how to add additional IP addresses to your network interface eth0 if you need more than one IP address. If you're fine with one IP address, you can skip this section.)

Let's assume our network interface is eth0. Then there is a file /etc/sysconfig/network-scripts/ifcfg-eth0 which contains the settings for eth0. We can use this as a sample for our new virtual network interface eth0:0:

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0

Now we want to use the IP address on the virtual interface eth0:0. Therefore we open the file /etc/sysconfig/network-scripts/ifcfg-eth0:0 and modify it as follows (we can leave out the HWADDR line as it is the same physical network card):

vi /etc/sysconfig/network-scripts/ifcfg-eth0:0


Afterwards we have to restart the network:

/etc/init.d/network restart

You might also want to adjust /etc/hosts after you have added new IP addresses, although this is not necessary.

Now run


You should now see your new IP address in the output:

[root@server1 ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:5A:9C:41
          inet addr:  Bcast:  Mask:
          inet6 addr: fe80::20c:29ff:fe5a:9c41/64 Scope:Link
          RX packets:535 errors:0 dropped:0 overruns:0 frame:0
          TX packets:363 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:52498 (51.2 KiB)  TX bytes:66064 (64.5 KiB)
          Interrupt:177 Base address:0x1400

eth0:0    Link encap:Ethernet  HWaddr 00:0C:29:5A:9C:41
          inet addr:  Bcast:  Mask:
          Interrupt:177 Base address:0x1400

lo        Link encap:Local Loopback
          inet addr:  Mask:
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:560 (560.0 b)  TX bytes:560 (560.0 b)


6 Disable The Firewall And SELinux

(You can skip this chapter if you have already disabled the firewall and SELinux at the end of the basic system installation (in the Setup Agent).)

I want to install ISPConfig at the end of this tutorial which comes with its own firewall. That's why I disable the default CentOS firewall now. Of course, you are free to leave it on and configure it to your needs (but then you shouldn't use any other firewall later on as it will most probably interfere with the CentOS firewall).

SELinux is a security extension of CentOS that should provide extended security. In my opinion you don't need it to configure a secure system, and it usually causes more problems than advantages (think of it after you have done a week of trouble-shooting because some service wasn't working as expected, and then you find out that everything was ok, only SELinux was causing the problem). Therefore I disable it, too (this is a must if you want to install ISPConfig later on).



Set both Security Level and SELinux to Disabled and hit OK:

Afterwards we must reboot the system:

shutdown -r now


7 Install Some Software

First we import the GPG keys for software packages:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Then we update our existing packages on the system:

yum update

Now we install some software packages that are needed later on:

yum install fetchmail wget bzip2 unzip zip nmap openssl lynx fileutils ncftp gcc gcc-c++

Share this page:

8 Comment(s)

Add comment


From: TechSpotting at: 2011-08-02 16:29:36

I have written a guide here on how to install CentOS 6 for server or desktops.

 It's for x86_64 some users might find it useful!

From: Mickey Knox at: 2011-12-20 03:25:14

for those who speak spanish (the translation to english is pending), I developed my own bash script to configure CentOS (or Redhat). is my version of the perfect server (post installation).

You can test it here:

From: Jason Barnett at: 2009-02-08 10:14:43


In order to install ncftp I had to add the using the following commands:

cd /etc/yum.repos.d/


vi kbsingh-CentOS-Extras.repo

change enabled=0 to enabled=1 as follows:

name=CentOS.Karan.Org-EL$releasever - Testing

rpm --import

and finally yum install ncftp

From: at: 2007-06-22 16:03:47

If you want to use the chmod in ISPConfig you have to change the lines in "/etc/proftpd.conf":




Yours sincerely mawi 

From: Anonymous at: 2010-10-28 01:14:36

First of all NEVER DO ANYTHING TO THE /TMP DIRECTORY!!!!! I cannot stress this enough. Doing so could damage your install. The OS uses this directory as its workspace.

Second, CentOS now has proftpd on yum, I believe it is on the RPMForge repo.
View how to add this repo HERE.

For those who are security minded and do no click links here you go:

Or just Google for centos RPMForge.

From: koka at: 2009-02-10 21:14:21

thanks :)

it really helpes me configure server



From: Anonymous at: 2011-10-05 11:26:34

Thank you

From: John at: 2009-02-23 11:00:08

thanks for the tutorial i have isconfig running now on vmware server - centos 5.0 with webmin to easy manage server.

if you have problem installing message flex run this:

yum install flex

transferring ISPConfig*.tar.gz tru proftpd follow this steps: