The Perfect Server - CentOS 6.4 x86_64 (nginx, Dovecot, ISPConfig 3)

Version 1.0
Author: Falko Timme
Follow me on Twitter

This tutorial shows how to prepare a CentOS 6.4 x86_64 server for the installation of ISPConfig 3, and how to install ISPConfig 3. ISPConfig 3 is a webhosting control panel that allows you to configure the following services through a web browser: nginx web server, Postfix mail server, MySQL, BIND nameserver, PureFTPd, SpamAssassin, ClamAV, Mailman, and many more. Since version 3.0.4, ISPConfig comes with full support for the nginx web server in addition to Apache; this tutorial covers the setup of a server that uses nginx, not Apache.

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

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.4 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:

3 Comment(s)

Add comment


From: Dimitris

Can someone explain to me how can i use only https with phpmyadmin and not both http and https?

Trying to make it more secure but still no luck. I read this tutorial but i can't get it to work.. Any ideas?

From: Lefteros

failed to mention that epel is needed for fail2ban and others

rpm -Uvh

From: Sebastian



I adopted this tutorial for a setup of my ispconfig webserver with centos7. I also added a second PHP version 5.6.8 in /opt. 

Now I'm running


- nginx


- PHP 5.6.8 with ioncube


and have the problem that my ioncube_loader segfaults.

Does anybody has an idea whats wrong, or is it a bug in ioncube_loader?



here my logs:


nginx error log:

2015/05/08 00:43:16 [error] 25783#0: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: xxx.x.x.xx, server:, request: "GET / HTTP/1.1", upstream: "fastcgi://unix:/var/lib/php5-fpm/web1.sock:", host: ""


php-fpm log:

[08-May-2015 00:43:16] WARNING: [pool web1] child 25718 exited on signal 11 (SIGSEGV) after 100.847123 seconds from start

[08-May-2015 00:43:16] NOTICE: [pool web1] child 25787 started



May  8 00:43:12 shopware1 systemd: Started The nginx HTTP and reverse proxy server.

May  8 00:43:16 shopware1 kernel: traps: php-fpm[25718] general protection ip:7f8fed612577 sp:7ffff64fe720 error:0 in[7f8fed5a2000+146000]



loader_wizard.php says:

Loader Installed Successfully

The ionCube Loader version 5.0.3 for PHP 5.6 is installed and encoded files should run successfully.