Help!
You can support the ISPConfig development by buying a subscription from HowtoForge - ISPConfig was initiated by the same people that run HowtoForge so your subscription will keep the ISPConfig development going.
Newsletter
Subscribe to ISPConfig Newsletter and stay informed about the latest news and updates.Email:
(If you want to unsubscribe from our newsletter, visit this link.)
Installation Instructions for ISPConfig 2
ISPConfig Requirements
Operating System: Linux (Kernel 2.2.x or later with glibc6)
(the following distributions are
supported: Mandrake/Mandriva Linux starting version 8.1 or later, RedHat
Linux version 7.3 or later, Fedora Core 1 - 6, Fedora 7 - 12, SuSE Linux version 7.3 or later, Debian Linux version 3.0
or later, Ubuntu 5.04 or later, CentOS 4.1 - 5.4)
- Apache Webserver version 1.3.12 or later / 2.0.40 or later
- Sendmail or Postfix
- Procmail
- Quota Package
- ProFTP as standalone version or vsftpd as inetd/xinetd/standalone version
- PHP 4.0.5 or newer as Apache module
- MySQL data base
a POP3/IMAP daemon that supports either the traditional Unix-Mailbox format (e.g.
gnu-pop3d, qpopper, ipop3d, popa3d or vm-pop3d) or the Maildir format (e.g.
Courier-Imap, Dovecot) - OpenSSL and mod_ssl for the creation of SSL virtual hosts
- BIND8 / BIND9
- iptables or ipchains
- gcc and cpp, the c and c++ compilers
System Setup Examples
Examples of system setups that work with ISPConfig perfectly out of the box:
- CentOS 4.3: http://www.howtoforge.com/perfect_setup_centos_4.3
- CentOS 4.4: http://www.howtoforge.com/perfect_setup_centos_4.4
- CentOS 4.5: http://www.howtoforge.com/perfect_server_centos4.5
- CentOS 4.6: http://www.howtoforge.com/centos-4.6-server-lamp-email-dns-ftp-ispconfig
- CentOS 4.7: http://www.howtoforge.com/perfect-server-centos-4.7
- CentOS 4.8 (i386): http://www.howtoforge.com/perfect-server-centos-4.8-i386-ispconfig-2
- CentOS 4.8 (x86_64): http://www.howtoforge.com/perfect-server-centos-4.8-x86_64-ispconfig-2
- CentOS 5.0: http://www.howtoforge.com/perfect_setup_centos5.0
- CentOS 5.1: http://www.howtoforge.com/centos-5.1-server-lamp-email-dns-ftp-ispconfig
- CentOS 5.2 (i386): http://www.howtoforge.com/perfect-server-centos-5.2
- CentOS 5.2 (x86_64): http://www.howtoforge.com/perfect-server-centos-5.2-x86_64
- CentOS 5.3 (i386): http://www.howtoforge.com/perfect-server-centos-5.3-i386-ispconfig-2
- CentOS 5.3 (x86_64): http://www.howtoforge.com/perfect-server-centos-5.3-x86_64-ispconfig-2
- CentOS 5.4 (x86_64): http://www.howtoforge.com/perfect-server-centos-5.4-x86_64-ispconfig-2
- Debian Woody (3.0): http://www.howtoforge.com/howto_linux_debian_server_setup
- Debian Sarge (3.1): http://www.howtoforge.com/perfect_setup_debian_sarge
- Debian Sarge (3.1) on a Strato Server: http://www.howtoforge.com/perfect_setup_debian_sarge_strato
- Debian Etch (4.0): http://www.howtoforge.com/perfect_setup_debian_etch
- Debian Lenny (5.0): http://www.howtoforge.com/perfect-server-debian-lenny-ispconfig2
- Fedora Core 3: http://www.howtoforge.com/perfect_setup_fedora_core_3
- Fedora Core 4: http://www.howtoforge.com/perfect_setup_fedora_core_4
- Fedora Core 5: http://www.howtoforge.com/perfect_setup_fedora_core_5
- Fedora Core 6: http://www.howtoforge.com/installing_a_lamp_system_with_fedora_core_6
- Fedora 7: http://www.howtoforge.com/perfect_server_fedora7
- Fedora 8: http://www.howtoforge.com/fedora-8-server-lamp-email-dns-ftp-ispconfig
- Fedora 9: http://www.howtoforge.com/perfect-server-fedora9
- Fedora 10: http://www.howtoforge.com/perfect-server-fedora-10
- Fedora 11 x86_64: http://www.howtoforge.com/perfect-server-fedora-11-x86_64-ispconfig-2
- Mandrake/Mandriva 10.2: http://www.howtoforge.com/perfect_setup_mandrake_10_2
- Mandriva 2006 Free: http://www.howtoforge.com/perfect_setup_mandriva_2006
- Mandriva 2007 Free: http://www.howtoforge.com/perfect_setup_mandriva_2007
- Mandriva 2007 Spring Free: http://www.howtoforge.com/perfect_server_mandriva_spring_2007
- Mandriva 2008 Free: http://www.howtoforge.com/perfect_server_mandriva_2008.0
- Mandriva 2008 Spring Free: http://www.howtoforge.com/perfect-server-mandriva-2008.1
- Mandriva 2008 Spring Free x86_64: http://www.howtoforge.com/perfect-server-mandriva2008.1-x86_64
- Mandriva 2009.0 Free i386: http://www.howtoforge.com/perfect-server-mandriva-2009.0-i386
- Mandriva 2009.1 Free x86_64: http://www.howtoforge.com/perfect-server-mandriva-2009.1-free-x86_64-ispconfig-2
- SuSE 9.2: http://www.howtoforge.com/perfect_setup_suse_9.2
- SuSE 9.3: http://www.howtoforge.com/perfect_setup_suse_9.3
- SuSE 10.0: http://www.howtoforge.com/perfect_setup_suse_10.0
- SuSE 10.1: http://www.howtoforge.com/perfect_setup_suse_10.1
- OpenSuSE 10.2: http://www.howtoforge.com/perfect_setup_opensuse_10.2
- OpenSuSE 10.3: http://www.howtoforge.com/perfect_server_opensuse10.3
- OpenSuSE 11: http://www.howtoforge.com/perfect-server-opensuse11
- OpenSuSE 11.1: http://www.howtoforge.com/perfect-server-opensuse-11.1
- Ubuntu 5.04: http://www.howtoforge.com/perfect_setup_ubuntu_5.04
- Ubuntu 5.10: http://www.howtoforge.com/perfect_setup_ubuntu_5.10
- Ubuntu 6.06: http://www.howtoforge.com/perfect_setup_ubuntu_6.06
- Ubuntu 6.10: http://www.howtoforge.com/perfect_setup_ubuntu_6.10
- Ubuntu 7.04: http://www.howtoforge.com/perfect_setup_ubuntu704
- Ubuntu 7.10: http://www.howtoforge.com/perfect_server_ubuntu7.10
- Ubuntu 8.04: http://www.howtoforge.com/perfect-server-ubuntu8.04-lts
- Ubuntu 8.10: http://www.howtoforge.com/perfect-server-ubuntu-8.10
- Ubuntu 9.04: http://www.howtoforge.com/perfect-server-ubuntu-9.04-ispconfig-2
- Ubuntu 9.10: http://www.howtoforge.com/perfect-server-ubuntu-9.10-karmic-koala-ispconfig-2
Installation
Hint: With the system installation, some system files
are replaced where adjustments were made.
This can lead to loss of entries in named.conf as well as
in the Sendmail/Postfix configuration.
Important: ISPConfig is meant to be installed on new Linux installations with no web sites, so if you run a server with hundreds of web sites and need a control panel that can take care of those existing web sites, then ISPConfig is not for you!
Make sure you have the c and c++ compilers installed on your server (gcc and cpp).
Log in to your shell as root.
Unpack the ISPConfig-archive
tar xvfz ISPConfig*.tar.gz
and change to the directory install_ispconfig:
cd install_ispconfig
In this directory please check the file dist.txt and see if
the values given there suit to your
Linux installation (they should be suitable for standard installations).
If you change any
values please be sure not to change the format of the file.
Then start the setup-script from there:
./setup
The installer will now compile an Apache with PHP5 that will run on port 81 and is needed by the ISPConfig system itself. It will not interfere with your existing Apache installation so you can go on unworried.
Important: Be sure to have installed gcc, flex and all the other tools neded for compiling sources before you run ./setup! You also need to install the MySQL header files which normally come in a package called mysql-devel, mysql-dev, libmysql-devel or something similar. Otherwise PHP5 will not compile, and the installation of ISPConfig stops!
When the ISPConfig Apache is built, a custom SSL certificate is built. Therefore you are asked a few questions. You can accept the default values, or you can enter new values there, this does not matter:

In step 7 ("Encrypting RSA private key of CA with a pass phrase for security [ca.key]")and step 8 ("Encrypting RSA private key of SERVER with a pass phrase for security [server.key]") of the certificate creation process you are asked if you want to encrypt the respective key now. Choose n there because otherwise you will always be asked for a password whenever you want to restart the ISPConfig system which means it cannot be restarted without human interaction!

If the compilation fails, the setup is stopped and all compiled files are removed. From the error message you get you should be able to see the reason for the failure (in most cases a package (like the MySQL header files) is missing). Try to solve the problem and the re-run ./setup.
In case of success the setup goes on:
Please choose your language. This is the language of
the ISPConfig interface.
Afterwards you are shown the ISPConfig licence (BSD licence).
Please read it carefully! You accept it by typing
"y”. If you do not want to accept the ISPConfig
licence, type “n”, and the installation routine
stops.
Installation Mode. Please select the installation mode
afterwards. You can choose between the
standard and the expert mode.
In standard mode the installation routine takes standard settings
for your Linux distribution and writes them to the ISPConfig
system.
In expert mode the installation routine proposes standard
settings to you (e.g. location of the config
file of your FTP server or log file of your mail server) which
you can confirm or edit.
In normal circumstances the standard mode should meet your
requirements. Select the expert
mode if you are familiar with your system.
The installation sript checks if the following software is
installed:
- Apache webserver,
- Mail Transport Agent (MTA): Sendmail or Postfix,
- Procmail,
- Quota,
- MySQL,
- ProFTP or vsftpd,
- OpenSSL,
- Bind8 / Bind9,
- iptables or ipchains.
If any of the packages is not present, the installation routine
stops. Install the missing package, delete the directoy
install_ispconfig, unpack ISPConfig again and start
from the beginning.
In addition to that the syntax of your existing Apache configuration
files is checked. If any error is
found the installation routine stops.
If all conditions are fulfilled, you are asked a few questions,
whose answers are necessary for the
installation of ISPConfig.
In case not all conditions are fulfilled the setup script
stops. Install the missing software, delete the directoy
install_ispconfig, unpack ISPConfig again and start
from the beginning.
Afterwards the following information has to be provided:
Please enter your MySQL server:
E.G. localhost
Please enter your MySQL user:
E.G. root
Please enter your MySQL password:
Your MySQL password
Please enter a name for the ISPConfig database:
E.g. ispconfigdb
Please enter the IP address of the ISPConfig web:
E.g. 192.168.0.1
Please enter the host name: E.g. www
Please enter the domain: E.g. xyz.de
Please select the protocol (http or https (SSL encryption))
to use to access the ISPConfig system: If you want to
use your control panel with SSL, select 1. You can
then access it under https://www.xyz.de:81.
If you want to access it under http://www.xyz.de:81,
choose 2.
After you have answered the questions ISPConfig should be
duly installed. If you indicated www as host and xyz.com as
the domain during the installation, you will find the ISPConfig
interface under
https://www.xyz.de:81 or http://www.xyz.de:81.
Here you can login first with the user name admin
and password
admin. It is recommended to change
the password immediately! This can be done under Tools
-> Change password.
If your server has more than one IP address, please check
if your additional IP addresses have
been correctly detected by the installation routine under
Management - > Server - >
Properties in the register Server -> IP list.
SpamAssassin
The ISPConfig comes with SpamAssassin, but without the Perl
modules needed by
SpamAssassin. Run the following command after the installation
of the ISPConfig:
/home/admispconfig/ispconfig/tools/spamassassin/usr/bin/spamassassin
If errors appear you have to install some Perl modules.
perl -MCPAN -e shell
install HTML::Parser
install DB_File
install Net::DNS (when prompted to enable tests, choose
"no")
install Digest::SHA1
To leave the Perl shell type
q
If
/home/admispconfig/ispconfig/tools/spamassassin/usr/bin/spamassassin
does not return any error everything is fine. You can then
leave SpamAssassin by typing
" CTRL + c".
General References
Linux Quota
If the package Quota is installed during the setup of the
ISPConfig system, the following steps have to be
done after the installation (the example assumes that that
you would like to apply Quota to the
directory /home on the partition
/dev/hda6):
Edit the file /etc/fstab and look
for the entry, in which the directory
/home is mentioned, e.g.
/dev/hda6/home ext2 default 1 2
Add the words usrquota and grpquota as follows:
/dev/hda6 /home ext2 defaults,usrquota,grpquota
1 2
Create the files aquota.user and
aquota.group in the directory
/home:
touch /home/aquota.user
and
touch /home/aquota.group
Change the properties of the new files:
chmod 600 /home/aquota.*
Reboot the server:
shutdown -r now
After the restart you have to do the following:
quotacheck -avugm
and
quotaon -avug
